ich arbeite gerade an einem makro das multiples suchen und ersetzen ermögliche soll. dabei habe ich bisher ein problem nicht knakcen können. der replacedescirptor ersetzt in dem beispiel die zahl 1, wenn sie einmal vorkommt. er soll sie aber nur ersetzen, wenn sie vollständig vorkommt. in der api habe ich dafür
SearchAlgorithms mit ABSOLUTE
der dispatcher zeichnet hierzu folgenden code auf:
Code: Alles auswählen
args1(8).Name = "SearchItem.AlgorithmType"
args1(8).Value = 1
Code: Alles auswählen
Sub SuErMultiple
Dim oDoc as Object
Dim oBereich as Object
Dim oSuche1 as Object
Dim oSuche2 as Object
Dim oSuche3 as Object
Dim oSuche4 as Object
Dim oSuche5 as Object
Dim oSheet as Object
oDoc = ThisComponent
oSheet = oDoc.CurrentController.ActiveSheet
oBereich = oSheet.getCellRangeByName("C1:C13")
oSuche1 = oBereich.createReplaceDescriptor
oSuche2 = oBereich.createReplaceDescriptor
oSuche3 = oBereich.createReplaceDescriptor
oSuche4 = oBereich.createReplaceDescriptor
oSuche5 = oBereich.createReplaceDescriptor
'--1. Suchen/Ersetzen Ausdruck
.oBereich.algorithmType = ABSOLUTE
.setSearchString("1")
.setReplaceString("5")
.SearchCaseSensitive = True 'unterscheidet Groß- und Kleinschreibung
'.SearchRegularExpression = True 'sucht nach regulären Ausdrücken
end with
oBereich.replaceAll(oSuche1)
klaus