Seite 1 von 1
Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Do 21. Dez 2023, 08:08
von fiberkill
Hallo zusammen,
ich hab ein kleines Problem.
Ist es möglich bestimmte Zellen eines Tabellenblattes zu löschen,
sobald die Calc Datei geöffnet wurde.
Hintergrund meiner Frage:
In diesem Dokument werden Daten zum Urlaubsantrag erfasst.
Sollte der letzte Benutzer seine Daten nicht entfernt und das Dokument gespeichert haben,
stehen diese Antragsdaten ja noch in den entsprechenden Zellen.
Der nächste Benutzer könnte dann nach dem Öffnen der Datei diese Daten sehen.
Daher sollten diese Zellen immer beim Öffnen geleert werden.
Ich hoffe das ist verständlich erklärt
Vielen Dank im Voraus.
PS: Dieses Forum ist übrigens super

Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Do 21. Dez 2023, 14:46
von mikele
Hallo,
ich würde das Dokument als Tabelledokumentvorlagendatei (.ots) abspeichern. Dann wird beim Öffnen automatisch eine neue Datei auf der Basis dieser Vorlage (ohne EIntragungen) erstellt. Jeder Benutzer könnte dann seinen Antrag für sich abspeichern (oder es auch lassen).
Dadurch verhinderst du gleichzeitig, dass jemand an dem Formular etwas ändert.
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Do 21. Dez 2023, 15:15
von Pit Zyclade
Das ist einerseits richtig.
Aber wenn der Nutzer auf diesem Computer, der auch anderen zugänglich sein soll, irgendetwas, so also auch den Urlaubsantrag, speichert, ist der für den Nächsten zugänglich. Folglich bleibt dieses Problem.
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Fr 22. Dez 2023, 10:19
von blende8
Und wenn man die Datei schreibgeschützt setzt?
Dann kann man sie nur unter einem neuen Namen abspeichern.
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Fr 22. Dez 2023, 16:38
von Helmut_S
Hallo, anbei noch ein Vorschlag. Grundsätzlich bin ich der Ansicht von @mikele, dass die einfachste und sicherste Lösung hier die Verwendung einer Tabellenvorlage ist. Mit der beiliegenden Datei geht es jedoch auch. Das einzeilige makro, das in der Standard Bibliothek der Datei gespeichert ist ist an das Dokumenten-ereignis "Dokument wurde gespeichert unter ..." geknüpft. D.h. nach dem speichern unter neuem Titel löscht das Makro die im benannten Bereich "daten" eingegebenen Daten, so dass man/frau im gleichen Dokument wieder neue Daten eingeben kann. Dabei besteht dann aber das Risiko, dass wenn das dokument nur gespeichert wird ohne neuen Titel zu vergeben, das vorherige Dokument überschrieben wird. Daher bleibt die Verwendung der vorlagendatei die sicherere Lösung. Welche Daten gelöscht werden kann man mit der Summierung der ClearContents() Parameter steuern - siehe Bild in der Datei. Um die Datei als Vorlage zu verwenden, genügt es sie zu laden und als Vorlage zu speichern und mit Umsch+Strg+ N aufzurufen.
Viel Erfolg beim Tüfteln und frohe Weihnachtstage, Helmut
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Mo 25. Dez 2023, 11:47
von Roland1
Das Dokument beim
"Namen, Urlaub von - bis",
mit Textfeldern versehen, Tabelle schützen und im PDF Format speichern.
Eventuell hilft es, wenn du deine Tabelle ohne wichtige Daten mit anhängst, so können wir dir besser helfen.
Es liest sich so als ob du den Urlaubsantrag in eine Webseite verknüpfen willst ?
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Mo 25. Dez 2023, 12:43
von Roland1
Falls du mit Makros arbeitest ???
kannst du das löschen in deinem Makro "speichern Button" mit einpflegen. (mit deinen Koordinaten)
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$M$9"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Flags"
args2(0).Value = "A"
dispatcher.executeDispatch(document, ".uno:Delete", "", 0, args2())
Re: Zellen löschen beim öffnen eines Calc Dokuments
Verfasst: Mo 25. Dez 2023, 13:38
von Roland1
Weil du dich nicht äußerst, hab ich dir mal eine kleine Datei angehängt.
Eventuell sind wir auf dem richtigen Weg