Seite 1 von 1

[solved] Funktion: Dateierstelldatum in eine Zelle einfügen

Verfasst: So, 08.12.2013 01:12
von Cyklista
Hallo!

Ich brauche eine Funktoin (oder ein Makro) zum Einfügen des Datums der Daeierstellung in eine Zelle.
Diese Funktion will ich einer Zelle in einer Tabellenkalkulation-Vorlage zordnen. Beim Alegen einer Datei soll dieses Datum automatisch eingeteagen werden und konstant bleiben.
Gibt es so was fertiges irgendwo zu finden?

Przemek

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: So, 08.12.2013 10:21
von Stephan
Gibt es so was fertiges irgendwo zu finden?
wahrscheinlich ja, aber es lohnt ja kaum das Suchen, da es schneller geht es neu hinzuschreiuben. z.B. sollte die folgende, benutzerdefinierte, Funktion das erledigen:

Code: Alles auswählen

Function ErstDat()
	With ThisComponent.getDocumentInfo.CreationDate
		ErstDat = DateSerial(.year, .month, .day)
	End With
End Function
aufzurufen in einer Tabellenzelle mittels =ErstDat() ohne Parameter.

Gruß
Stephan

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: So, 08.12.2013 21:40
von Cyklista
Vielen Dank :)
Aber da fehlt etwas wahrscheinlich. Die Funktion generiert einen BASIC-Fehler.
getDocumentInfo: Eigenschaft, oder Methode unbekannt.

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: So, 08.12.2013 22:08
von Stephan
Aber da fehlt etwas wahrscheinlich.


eigentlich nicht, Beispiel anhängend.


Gruß
Stephan

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: Mo, 09.12.2013 10:22
von Cyklista
Es wird wieder der gleiche Fehler ausagelöst:
"Eigenschaft, oder Methode nicht gefunden: getDocumentInfo
Und in dem Makro wird die folgende Zeile markiert:

Code: Alles auswählen

 ErstDat = DateSerial(.year, .month, .day)
LibreOffice 4.1.2.3 für Linux, 64 Bit
Woran kann es liegen?

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: Mo, 09.12.2013 10:52
von Stephan
Woran kann es liegen?
An LibreOffice.

1.
mir ist unverständlich weshalb eine Zeile markiert wird auf welche sich die Fehlermeldung garnicht bezieht
2.
Keine Ahnung ob man in LibreOfice etwas an StarBasic geändert hat, was diesen Fehler auslöst.


(Die Function läuft hier bei mir unter OOo 3.3.0.)


Gruß
Stephan

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: Mo, 09.12.2013 11:17
von Karolus
Hallo

In Libreoffice gibts .DocumentInfo nicht mehr, nimm stattdessen
.getDocumentProperties...

Code: Alles auswählen

Function ErstDat()
   With ThisComponent.getDocumentProperties.CreationDate
      ErstDat = DateSerial(.year, .month, .day)
   End With
End Function 
Karolus

Re: Funktion: Dataeierstelldatum in eine Zelle einfugen

Verfasst: Mo, 09.12.2013 12:57
von Cyklista
Vielen Dank.

Jetzt klappt's.

Gruß
Przemek

Re: [solved] Funktion: Dateierstelldatum in eine Zelle einf

Verfasst: Mo, 09.12.2013 13:43
von Cyklista
Noch eine Frage:
Die Funktion fuktioniert, aber:
wenn ich sie in eine Zelle von einer Vorlage eingebe und dann auf ihrer Grundlage eine neue Datei erstelle, dann erscheint in der Zelle das Datum der Erstellung der Datei (und nicht der Vorlage) und es ist got so, aber wenn ich in einer andere Zelle einen Verweis auf diese Zelle mache, dann erscheint in der zweiten Zelle das Datum der Erastellung der Vorlage und nicht der Datei.
Beispiel:

Code: Alles auswählen

A1=ErstDat() Ergebnis: 09.12.2013 (heute)
A2=A1 Ergebnis:   28.10.2008 (Datum der Erstellung der Vorlage)
Warum?
Und noch eins: Wie kann ich das Datum-Format "D. MMMM YYYY (also Monat in Worten) erreichen? Die Formatierung der Zelle bringt nichts.