Aktuelles Datum einfügen per Makro
Verfasst: Di 26. Mär 2024, 09:55
Hallo!
Beim Stöbern im Internet bin ich fündig geworden, wie man die dürftigen Datum-einfügen-Funktionen von Libreoffice erweitern kann.
Quelle:
http://www.openoffice.org/de/doc/howto/ ... nktiontext
Mein Wunsch war ein Makro zum Einfügen des aktuellen Datums als Text in Writer. Das klappt hiermit, und in Calc klappt es auch. Warum das Einfügen ausgerechnet mit meinem Lieblingsformat klappt (TT.MM.JJJJ), weiß ich nicht, aber warum soll ich nicht auch mal Glück haben.
Dieses Makro habe ich auf das Tastenkürzel Strg + D gelegt:
Beim Stöbern im Internet bin ich fündig geworden, wie man die dürftigen Datum-einfügen-Funktionen von Libreoffice erweitern kann.
Quelle:
http://www.openoffice.org/de/doc/howto/ ... nktiontext
Mein Wunsch war ein Makro zum Einfügen des aktuellen Datums als Text in Writer. Das klappt hiermit, und in Calc klappt es auch. Warum das Einfügen ausgerechnet mit meinem Lieblingsformat klappt (TT.MM.JJJJ), weiß ich nicht, aber warum soll ich nicht auch mal Glück haben.

Dieses Makro habe ich auf das Tastenkürzel Strg + D gelegt:
Code: Alles auswählen
'Hauptmakro Quelle: http://www.openoffice.org/de/doc/howto/tutorials/howto_insert_date_de.html
Sub Insert_Date_As_Text
Insert_As_Text( Date )
End Sub
'Hilfsfunktion:
Sub Insert_As_Text( aValue As String )
oDesktop = createUnoService( "com.sun.star.frame.Desktop" )
oController = oDesktop.CurrentFrame.Controller
oDocument = oController.Model
' insert as text for Calc ----------------------
If oDocument.supportsService( "com.sun.star.sheet.SpreadsheetDocument" ) Then
oSelection = oController.Selection
oSelection.Formula = "'" & aValue ' apostroph forces string
' insert as text for Writer --------------------
ElseIf oDocument.supportsService( "com.sun.star.text.TextDocument" ) Then
oSelection = oDocument.CurrentSelection( 0 )
oSelection.Text.insertString( oSelection, aValue, True )
EndIf
End Sub