Seite 1 von 1

Funktion Heute

Verfasst: Mi, 15.06.2011 10:58
von Apfelbaum
Hallo,

ich möchte in einem Dokument (ots) eine Zelle haben, die das heutige Datum schreibt, wenn ich das Dokument öffne. Das funktioniert mit der Funktion "Heute" gut. Nun möchte ich aber das Dokumnet ausfüllen, abspeichern (ods) und wenn ich es in drei Tagen wieder öffne, nicht das dann neue Datum haben, sondern das, was zu dem ausgefüllten Dokument passt, also von heute.
Wie geht das?

Libre office
aktuelles Opensuse

Danke im Voraus für Ideen

Apfelbäumchen

Re: Funktion Heute

Verfasst: Mi, 15.06.2011 11:29
von Stephan
z.B. folgendes Makro abspeichern (unter Extras-Makros-Makros verwalten-OOoBasic-Meine Makros) und zum Einfachen Aufrufen einer Tastaturkombination (Extras-Anpassen-Tastatur) zuweisen.

Code: Alles auswählen

Sub aktuelles_Datum()
  If ThisComponent.getCurrentSelection.supportsService("com.sun.star.sheet.SheetCell") Then
      ThisComponent.getCurrentSelection.FormulaLocal = Date()
    Else
      Msgbox "Bitte nur EINE ZELLE markieren."
  End If    
End Sub


Gruß
Stephan

Re: Funktion Heute

Verfasst: Mi, 15.06.2011 17:20
von komma4
Stephan hat geschrieben:z.B. folgendes Makro abspeichern
Na - das geht aber besser :)

Das folgende Makro in einem Modul der STANDARD-Bibliothek der Vorlage kopieren, ggfs. Tabellenname und gewünschte Zelle ändern, dann mit Extras>Anpasssen...>Ereignisse>Neues Dokument verbinden.

Code: Alles auswählen

Sub ErstellungsdatumInZelle
' de48896
' 2011-06-15

ThisComponent.Sheets().getByName( "Tabelle1" ).getCellRangeByName( "D4" ).FormulaLocal = Date()

End Sub
Will das "Bäumchen" tatsächlich was mit "Datum" und "Tastenkombinationen"... dann solle er sich mal meine DateTime2-Extension installieren.
Siehe meine Signatur 8)