Autor Beitrag
trm
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 491
Erhaltene Danke: 19

Windows 7x64
Delphi 7
BeitragVerfasst: Do 21.08.14 21:19 
Huhu.

Weiß jemand, wie oder ob es möglich ist, eine Vorlage im LibreOffice Calc zu erstellen, bei der bei jeder Speicherung eine Formel, welche das aktuelle Datum ausgibt, fest verankert und beim nächsten Öffnen der abgespeicherten Datei diese dann das Datum der letzten Speicherung statt der Formel anzeigt?

Die Formel ist einfach: JETZT()

_________________
In Erfurt gibt es eine Pension, in der es gemütlich ist, Google einfach nach Pension Fiege ;)
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19326
Erhaltene Danke: 1749

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 21.08.14 22:31 
Für MS Office ist das einfach:
www.mrexcel.com/foru...-saved-modified.html
Ob es so etwas auch für LibreOffice gibt, kann ich dir leider nicht sagen. Aber vielleicht hilft das weiter um etwas passendes zu finden.
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Sa 23.08.14 15:41 
Hallo Mathias, Du hast den Thread als erledigt markiert. Wie hast Du Dein Problem denn gelöst?

Ich hatte mir in LO (4.2) mal ein Makro geschrieben,
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
Function LastSaved()
   Dim Doc As Object
   Dim ModDate As Variant
   
   Doc = ThisComponent()
   ModDate = Doc.DocumentProperties.ModificationDate
   
   If ModDate.Year = 0 Then
      ModDate = Doc.DocumentProperties.CreationDate
   End If
           
   LastSaved = Date(ModDate.Year,ModDate.Month,ModDate.Day) & " " & Time(ModDate.Hours,ModDate.Minutes,ModDate.Seconds)  
End Function

Sub CalculateAll
   Dim Doc As Object 
   Doc = ThisComponent()
   Doc.CalculateAll
End Sub
und letzteres mit dem Speichern-Event verknüpft. Dämlicherweise wird beim Öffnen der Datei statt dem Datum der letzten Änderung das Datum des Öffnens angezeigt. :shock: Die Anzahl der Änderung (EditingCycles) bleiben aber konstant.
Außerdem muss das Makro in die Datei eingebettet werden, ansonsten existiert beim Öffnen des Dokumentes das Objekt Doc.DocumentProperties noch nicht, wenn das Makro darauf zugreifen möchte.

Scheint mir alles noch nicht ganz ausgereift zu sein oder ich mache irgendetwas grundlegend falsch.

Beste Grüße
trm Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 491
Erhaltene Danke: 19

Windows 7x64
Delphi 7
BeitragVerfasst: So 24.08.14 01:07 
Hi Marc,

ich habe es gar nicht zum Laufen gebracht, weil es den Befehl Application..Volatile in Basic nicht gibt. Eine Möglichkeit, dies zu emulieren habe ich auch nicht gefunden. Somit schreibe ich das Datum immer per Hand rein.

Der ganze Hintergrund der Sache ist, ich wollte eine Formel für das Datum einer Rechnungsvorlage erstellen, mit der ich nicht immer das Datum per Hand ändern muss. Einfach nur JETZT() dort reinschreiben bringt nichts, dann steht ja in einem späteren Öffnen der Rechnung (nicht die Vorlage) das aktuelle Datum drin.

Deinen Code habe ich getestet, er funktionierte ein einziges mal, danach, beim nächten öffnen der Datei nicht mehr.

Danke für Deine Hilfe, bin im Moment zu müde. ;)

_________________
In Erfurt gibt es eine Pension, in der es gemütlich ist, Google einfach nach Pension Fiege ;)
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: So 24.08.14 15:00 
Scheint wohl ein Bug zu sein. Einen ähnlichen Bug gab es auch einmal bei Excel.
Da der Bugreport bereis über ein Jahr zurückliegt und sich seitdem nicht mehr getan hat, ist es auch fraglich, ob sich im absehbarer Zeit jemand darum kümmern wird. :?