❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

[gelöst]Datum fixieren

WRITER hat alles, was Sie von einer modernen, voll ausgestatteten Textverarbeitung erwarten.
Antworten
malt14
Beiträge: 125
Registriert: Fr 7. Nov 2014, 06:21

[gelöst]Datum fixieren

Beitrag von malt14 » So 16. Aug 2015, 09:46

Guten Tag,

im Forum fand ich bereits:
http://www.libreoffice-forum.de/viewtop ... =datetime2

Code: Alles auswählen

sub fixdatum
      
   sDatum = format (date() ,"DD.MM.YYYY")
   odoc=thiscomponent
   oview=odoc.getcurrentcontroller.getviewcursor
   odoc.gettext().insertstring(oview,sdatum,false)

end sub
Kann man noch die Zeit hinzufügen, z.B 16.08.2015 09:43?
Da ich dies nur im Textteil einer Writer Datei benötige, wäre die Extension DateTime2 zu umfangreich.

Mit dem Makro Recorder erzeugte ich:

Code: Alles auswählen

sub date_writer
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(5) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Type"
args1(0).Value = 0
args1(1).Name = "SubType"
args1(1).Value = 0
args1(2).Name = "Name"
args1(2).Value = ""
args1(3).Name = "Content"
args1(3).Value = "0"
args1(4).Name = "Format"
args1(4).Value = 10050
args1(5).Name = "Separator"
args1(5).Value = " "

dispatcher.executeDispatch(document, ".uno:InsertField", "", 0, args1())


end sub
Gibt Datum/Zeit nur als Zahl; außerdem grau unterlegt wie ein Feldbefehl. Das Format sollte jedoch wie der übrige Text sein.

Für Calc funktioniert das mit dem Makro Recorder erzeugte:

Code: Alles auswählen

sub datum_zeit_fix
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 = "StringName"
args1(0).Value = "=JETZT()"

dispatcher.executeDispatch(document, ".uno:EnterString", "", 0, args1())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "SelectedFormat"
args3(0).Value = 1

dispatcher.executeDispatch(document, ".uno:ClipboardFormatItems", "", 0, args3())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:SetOptimalColumnWidthDirect", "", 0, Array())


end sub
Vielleicht gibt es dafür eine einfachere Lösung.

Kann man die persönlichen Anpassungen der Symbolleisten und Tastenkombinationen speichern, um diese auf ein anderes System zu übertragen oder als backup? Kopieren des LO config Ordners in roaming hilft dafür nicht.

Grüße

Malt

LibreOffice
Version: 4.4.5.2
Build-ID: a22f674fd25a3b6f45bdebf25400ed2adff0ff99
Gebietsschema: de_DE
Microsoft Windows 8.1 Home 6.03.9600 x64, Java 8 Update 51 (Build 1.8.0_51-b16)
Zuletzt geändert von malt14 am So 16. Aug 2015, 16:18, insgesamt 1-mal geändert.

malt14
Beiträge: 125
Registriert: Fr 7. Nov 2014, 06:21

Re: Datum fixieren

Beitrag von malt14 » So 16. Aug 2015, 12:34

Hallo nikki,

Dank für den Link.

Ich hatte gehofft, jemand weiß, wie man das Makro ergänzt, um neben dem Datum die Zeit auszugeben.

Grüße
Malt

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Datum fixieren

Beitrag von F3K Total » So 16. Aug 2015, 13:18

Hi,
malt14 hat geschrieben:Ich hatte gehofft, jemand weiß, wie man das Makro ergänzt, um neben dem Datum die Zeit auszugeben.
ersetze die erste Makrozeile durch folgende:

Code: Alles auswählen

sDatum = format (now() ,"DD.MM.YYYY HH:MM")
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

malt14
Beiträge: 125
Registriert: Fr 7. Nov 2014, 06:21

Re: Datum fixieren

Beitrag von malt14 » So 16. Aug 2015, 16:18

Hallo R,

Dank für Deine Hilfe! Es funktioniert.

Ich änderte das Format auf ISO 8601, allerdings konnte ich das "+02:00" nicht einbauen.

Code: Alles auswählen

sub date_writer
   sDatum = format (now() ,"YYYY-MM-DDTHH:MM:SS")
   odoc=thiscomponent
   oview=odoc.getcurrentcontroller.getviewcursor
   odoc.gettext().insertstring(oview,sdatum,false)



end sub

Da es in Calc keine ISO 8601 Datumsvorlage gibt, konnte ich dies Format dort nicht benutzen. Es wäre zwar möglich, dies benutzerdefiniert mittels Dokumentvorlage für neue Dateien einzusetzen, jedoch würde bei der Nutzung in alten Dateien das Datum als Zahl ausgegeben.

Wäre praktisch, es gäb auch für Calc ein kurzes Makro.

Grüße
Malt

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: [gelöst]Datum fixieren

Beitrag von F3K Total » So 16. Aug 2015, 20:12

malt14 hat geschrieben:Wäre praktisch, es gäb auch für Calc ein kurzes Makro.
Jo, wäre es, ist auch kein Problem.
Wenn Du möchtest, dass ich es für dich mache, schreib mir eine PN (Private Nachricht).
R
Windows 11: AOO, LO Linux Mint: AOO, LO

malt14
Beiträge: 125
Registriert: Fr 7. Nov 2014, 06:21

Re: [gelöst]Datum fixieren

Beitrag von malt14 » So 16. Aug 2015, 21:43

Hallo R,

für mich selbst ist es nicht so wichtig. Ich erwähnte es als Anregung. Vielleicht bauen die Programmierer in eine künftige LO Version für Writer und Calc entsprechende Features ein.

Nochmals Dank für Deine Hilfe.

Grüße
Malt

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: [gelöst]Datum fixieren

Beitrag von F3K Total » So 16. Aug 2015, 21:54

malt14 hat geschrieben:Vielleicht bauen die Programmierer
Dann bist du hier an der falschen Adresse, da solltest du dich an die Programmierer wenden, in diesem Forum helfen Anwender Anwendern.
R
Windows 11: AOO, LO Linux Mint: AOO, LO


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten