NewBe Frage: Suchen und Ersetzten - geht das auch kürzer?
Verfasst: Do, 28.08.2014 19:45
Hallo Allerseits,
ich bin ganz neu hier und habe mit OO0 Basic eben erst angefangen. Ich habe ein kleines, funktionierendes Makro zum Suchen und Ersetzen von Worten/Zeichen in Calc erstellt (Mit Hilfe von Herrn Dannenhöfer
. Nun meine Frage: Geht das auch kürzer (besser)? Ich habe mit "if then" herumprobiert. Aber ohne wirklichen Erfolg. Warum "if then"? Ich dachte mir das so: Weil der String fürs Ersetzen immer "" ist. Also leer oder nichts. Und da sich das wiederholt dachte ich man könnte dieses Makro sicherlich straffen. Habe es aber (noch) nicht hinbekommen. Könnt Ihr mir bitte auf die Sprünge helfen?
Nachfolgend mein bescheidener Code.
Vielen Dank und Gruß
Lidia
ich bin ganz neu hier und habe mit OO0 Basic eben erst angefangen. Ich habe ein kleines, funktionierendes Makro zum Suchen und Ersetzen von Worten/Zeichen in Calc erstellt (Mit Hilfe von Herrn Dannenhöfer

Nachfolgend mein bescheidener Code.
Vielen Dank und Gruß
Lidia
Code: Alles auswählen
sub Suchen_und_Ersetzen
REM Definiere Variablen
Dim oDocument
Dim mySheet 'Tabellenblatt, in dem das Ersetzen stattfindet.
Dim myRange 'Zellbereich in dem ersetzt wird
Dim myReplace 'Ersetzen-Deskriptor.
Dim replace
REM Suchen und Ersetzen
mySheet = ThisComponent.Sheets(0)
myRange = mySheet.getCellRangeByName("A1:L100")
myReplace(1) = mySheet.createReplaceDescriptor()
myReplace(1).setSearchString(", Deutschland")
myReplace(1).setReplaceString("")
myReplace(1).SearchWords = False
replace = mySheet.replaceAll(myReplace(1))
myReplace(2) = mySheet.createReplaceDescriptor()
myReplace(2).setSearchString("Mitgliedsname ")
myReplace(2).setReplaceString("")
myReplace(2).SearchWords = False
replace = mySheet.replaceAll(myReplace(2))
myReplace(3) = mySheet.createReplaceDescriptor()
myReplace(3).setSearchString("EUR ")
myReplace(3).setReplaceString("")
myReplace(3).SearchWords = False
replace = mySheet.replaceAll(myReplace(3))
myRange = mySheet.getCellRangeByName("H1:H100")
myReplace(4) = mySheet.createReplaceDescriptor()
myReplace(4).setSearchString("(")
myReplace(4).setReplaceString("")
myReplace(4).SearchWords = False
replace = mySheet.replaceAll(myReplace(4))
myReplace(5) = mySheet.createReplaceDescriptor()
myReplace(5).setSearchString(")")
myReplace(5).setReplaceString("")
myReplace(5).SearchWords = False
replace = mySheet.replaceAll(myReplace(5))
end sub