🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Feldbefehl Jahr.TageImJahr
Feldbefehl Jahr.TageImJahr
Nach einer Weile des (frustrierten) Probierens mit allen möglichen Ansätzen und der Feststellung, dass in diesem Bereich wenig an Doku zu finden ist, nun also die Hoffnung, dass einer von euch die Lösung kennt.
Ich möchte gerne (in die Fußzeile) eines (mehrseitigen) Dokuments eine Versionsnummer einfügen, die sich zusammensetzt aus dem Jahr und der Anzahl der seit dem 1.1. vergangenen Tage. Für heute also: "16.114". Da gelingt mir nicht - weder mit verschiedenen Datumsformaten, noch mit Variablen noch Benutzerfeldern etc.
Ich möchte gerne (in die Fußzeile) eines (mehrseitigen) Dokuments eine Versionsnummer einfügen, die sich zusammensetzt aus dem Jahr und der Anzahl der seit dem 1.1. vergangenen Tage. Für heute also: "16.114". Da gelingt mir nicht - weder mit verschiedenen Datumsformaten, noch mit Variablen noch Benutzerfeldern etc.
- miesepeter
- * LO-Experte *
- Beiträge: 2137
- Registriert: So 19. Dez 2010, 18:16
- Wohnort: Bayern
Re: Feldbefehl Jahr.TageImJahr
Also die 16 kann man einfügen, die Tage seit dem Jahresbeginn könnte ich aber nur mit Calc errechnen. Ich fand keine Möglichkeit, das mit Writer-Formel zu erzeugen... Ciao
Re: Feldbefehl Jahr.TageImJahr
Du wirst vermutlich nicht umhin kommen, ein kleines Makro zu schreiben, das den Tag im Jahr bestimmt, und ein Feld in die Fußzeile einzufügen, das dieses Makro aufruft (Register Funktionen, Typ Makro ausführen im Dialog Felder).
Gruß
lorbass
Gruß
lorbass
Re: Feldbefehl Jahr.TageImJahr
Danke für die Anregungen. Dass es ohne Makros nicht geht, hatte ich schon vermutet;
so scheint es dann wohl auch zu sein.
so scheint es dann wohl auch zu sein.
Re: Feldbefehl Jahr.TageImJahr
Hi,
mit folgendem Makrogeht es, wenn du über STRG+F2 -> Reiter Variablen -> Variable setzen eine Variable TAG_IM_JAHR erzeugst, z.B. 111 eingibst und in die Fußzeile einfügst.
Das Makro läßt du beim Öffnen des Dokumentes einmal ausführen ->
Menü Extras/Anpassen.../Reiter Ereignisse -> Dokument öffnen -> Makro ..., hier das o.a. Makro auswählen, speichern, fertig.
Wenn Du die Datei öffnest, wird heute 116 eingetragen.
Damit das Makro laufen darf, stellst du unter Extras/Optionen/LibreOffice/Sicherheit/Makrosicherheit mindestens die Stufe Mittel ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.
Beispieldatei anbei. Um den Unterschied zu sehen, kannst Du die Datei erst ohne Makro öffnen, dann steht 16.100 in der Fußzeile, mit Makroausführung springt es auf 16.116 um, und beginnt in 2017 mit 17.001.
Gruß R
mit folgendem Makro
Code: Alles auswählen
Sub Set_Current_day_of_Year
dim nDate as long
oTFEnum = thiscomponent.Textfields.createEnumeration
while oTFEnum.hasmoreelements
oTF = oTFEnum.nextElement
if oTF.VariableName = "TAG_IM_JAHR" then
n1stDate = DATEVALUE("01.01."+Year(now()))
oTF.Content = DATEVALUE(DATE())- n1stDate + 1
oTF.update
endif
wend
End Sub
Das Makro läßt du beim Öffnen des Dokumentes einmal ausführen ->
Menü Extras/Anpassen.../Reiter Ereignisse -> Dokument öffnen -> Makro ..., hier das o.a. Makro auswählen, speichern, fertig.
Wenn Du die Datei öffnest, wird heute 116 eingetragen.
Damit das Makro laufen darf, stellst du unter Extras/Optionen/LibreOffice/Sicherheit/Makrosicherheit mindestens die Stufe Mittel ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.
Beispieldatei anbei. Um den Unterschied zu sehen, kannst Du die Datei erst ohne Makro öffnen, dann steht 16.100 in der Fußzeile, mit Makroausführung springt es auf 16.116 um, und beginnt in 2017 mit 17.001.
Gruß R
- Dateianhänge
-
- Tag_im_Jahr.odt
- (10.95 KiB) 275-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Feldbefehl Jahr.TageImJahr
Ohh, super! Danke für die Mühe. So werde ich es einmal ausprobieren.
Re: Feldbefehl Jahr.TageImJahr
Hallo,
die Tageszahl zwischen HEUTE() und dem 1.1 des Jahres bestimmen.
Dies Feld kann man als DDE-Verknüpfung in Writer einbinden.
Einfacher ist das nicht, aber wenn man die Makrosicherheit nicht ändern will vielleicht eine Alternative.
MfG, Jörn
statt Makros könnte man sich auch von Calc helfen lassen und in einer simplen Calc-Datei in einem Feldoopa hat geschrieben:Dass es ohne Makros nicht geht,
die Tageszahl zwischen HEUTE() und dem 1.1 des Jahres bestimmen.
Dies Feld kann man als DDE-Verknüpfung in Writer einbinden.
Einfacher ist das nicht, aber wenn man die Makrosicherheit nicht ändern will vielleicht eine Alternative.
MfG, Jörn
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit
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.