jedd General User

Joined: 13 Jan 2009 Posts: 7
|
Posted: Tue Jan 13, 2009 12:58 pm Post subject: Making Macro case sensitive |
|
|
I'm trying to make a simple character replacement macro.
A -- æ (for example)
I tried recording a macro using the drop menus etc. It worked fine except I need the find and replace to be case sensitive. Checking the match case box in the GUI as you record does not end up as a parameter in the macro.
I looked at the code under edit macro. I'm not much of a coder but it looks like this:
REM ***** BASIC *****
Sub Main
End Sub
sub a2ae
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(1 as new com.sun.star.beans.PropertyValue
args1(0).Name = "SearchItem.StyleFamily"
args1(0).Value = 2
args1(1).Name = "SearchItem.CellType"
args1(1).Value = 0
args1(2).Name = "SearchItem.RowDirection"
args1(2).Value = true
args1(3).Name = "SearchItem.AllTables"
args1(3).Value = false
args1(4).Name = "SearchItem.Backward"
args1(4).Value = false
args1(5).Name = "SearchItem.Pattern"
args1(5).Value = false
args1(6).Name = "SearchItem.Content"
args1(6).Value = false
args1(7).Name = "SearchItem.AsianOptions"
args1(7).Value = false
args1( .Name = "SearchItem.AlgorithmType"
args1( .Value = 0
args1(9).Name = "SearchItem.SearchFlags"
args1(9).Value = 65536
args1(10).Name = "SearchItem.SearchString"
args1(10).Value = "A"
args1(11).Name = "SearchItem.ReplaceString"
args1(11).Value = "æ"
args1(12).Name = "SearchItem.Locale"
args1(12).Value = 255
args1(13).Name = "SearchItem.ChangedChars"
args1(13).Value = 2
args1(14).Name = "SearchItem.DeletedChars"
args1(14).Value = 2
args1(15).Name = "SearchItem.InsertedChars"
args1(15).Value = 2
args1(16).Name = "SearchItem.TransliterateFlags"
args1(16).Value = 1280
args1(17).Name = "SearchItem.Command"
args1(17).Value = 3
args1(1 .Name = "Quiet"
args1(1 .Value = true
dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args1())
rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:Undo", "", 0, Array())
rem ----------------------------------------------------------------------
dim args3(1 as new com.sun.star.beans.PropertyValue
args3(0).Name = "SearchItem.StyleFamily"
args3(0).Value = 2
args3(1).Name = "SearchItem.CellType"
args3(1).Value = 0
args3(2).Name = "SearchItem.RowDirection"
args3(2).Value = true
args3(3).Name = "SearchItem.AllTables"
args3(3).Value = false
args3(4).Name = "SearchItem.Backward"
args3(4).Value = false
args3(5).Name = "SearchItem.Pattern"
args3(5).Value = false
args3(6).Name = "SearchItem.Content"
args3(6).Value = false
args3(7).Name = "SearchItem.AsianOptions"
args3(7).Value = false
args3( .Name = "SearchItem.AlgorithmType"
args3( .Value = 0
args3(9).Name = "SearchItem.SearchFlags"
args3(9).Value = 65536
args3(10).Name = "SearchItem.SearchString"
args3(10).Value = "A"
args3(11).Name = "SearchItem.ReplaceString"
args3(11).Value = "æ"
args3(12).Name = "SearchItem.Locale"
args3(12).Value = 255
args3(13).Name = "SearchItem.ChangedChars"
args3(13).Value = 2
args3(14).Name = "SearchItem.DeletedChars"
args3(14).Value = 2
args3(15).Name = "SearchItem.InsertedChars"
args3(15).Value = 2
args3(16).Name = "SearchItem.TransliterateFlags"
args3(16).Value = 1024
args3(17).Name = "SearchItem.Command"
args3(17).Value = 3
args3(1 .Name = "Quiet"
args3(1 .Value = true
dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args3())
end sub
Is there a short easy answer to this? Minimally it needs to be case sensitive. Ideally I could stipulate Unicode values to find and replace.
Thanks
Jedd Schrock |
|