I'd like to create a macro for a user-defined date format (H:MMa/p). As
examples, 7:00 AM would display as 7:00a and 3:33 PM as 3:33p. I can
create the format manually, but I understand the LibreOffice format
can't save user-defined formats. So my thought is to create a macro
which creates the format each time the spreadsheet is opened. The
user-defined Format Code is for a saved Style.
The macro records without incident and the date format is correct.
However, running the saved macro doesn't change the format. It seems
this should work. Thoughts? The recorded macro is as follows:
sub FormatTime
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(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$D$13"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "DesignerDialog"
args2(0).Value = true
dispatcher.executeDispatch(document, ".uno:DesignerDialog", "", 0, args2())
rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:EditStyle", "", 0, Array())
rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "DesignerDialog"
args4(0).Value = false
dispatcher.executeDispatch(document, ".uno:DesignerDialog", "", 0, args4())
end sub