Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

einzelne Zellen beim schliessen nicht speichern
#1
Hallo zusammen,

ich habe in Excel in Zelle A1 einen Countdown-Timer eingebaut und als Hilfe in A2 per VBA (beim Öffnen der Tabelle) einen Zeitstempel setzen lassen.

Wenn ich nun manuell an der Datei nichts ändere kommt natürlich trotzdem die Rückfrage beim schliessen ob gespeichert werden soll.

Da viele Kollegen auf die Datei zugreifen und diese manchmal manuell etwas ändern und manchmal nicht wäre es klasse die Rückfrage kommt nur dann wenn manuell eine Änderung vorgenommen wurde, also auf bestimmte Zellen beschränkt.

(ich kenne die Möglichkeit dass beim schliessen immer automatisch gespeichert werden soll oder dass die Frage nach dem Speichern nie kommen soll, beide Lösungen benötige ich nicht).

Kann mir einer von Euch helfen?

Danke und Grüße
Corbrameister
Antworten Top
#2
Hi,

deklariere in einem allg. Modul eine öffentliche, boolsche Variable (Bsp.: Public blnSpeichern as boolean). Im Change Ereignis des Blattes, checkst Du, ob das Target Teil der betreffenden Zellen ist (Stichwort Intersect).
Wenn ja, dann setze die Variable dann, wenn sie true ist, auf false, sonst auf true.

Im BeforeSave Ereignis schreibst Du in den Prozedurrumpf: Cancel = blnSpeichern
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#3
Hallo,

kontrolliere in dem Timer-Makro die Saved-Eigenschft des Workbooks vor den Zelleintragungen und führe sie danach genauso weiter:

Code:
Dim bolSaved As Boolean
  bolSaved = ThisWorkbook.Saved
  Range("A1") = "keine Ahnung"
  Range("A2") = Now
  ThisWorkbook.Saved = bolSaved

Gruß Uwe
Antworten Top
#4
Danke für Eure Antworten. Mein Fehler war dass ich vergessen habe mitzuteilen dass die Tabelle sich jede Sekunde aktualisiert damit der Countdown läuft. Habe eine ganz einfache VBA kopiert, bin VBA Anfänger. Bringt somit nichts wenn ich nach setzen des Zeitstempels speichere, sorry.

Hier ist mein Code:

Sub Datum()
Tabelle1.Range("A1").Value = Time
End Sub


Sub Countdown()
NextTime = Now + TimeValue("00:00:01")
Application.OnTime NextTime, "Countdown"
ActiveSheet.Calculate

End Sub


Bei Start der Datei werden diese beiden Sub automatisch gestartet.


Ich habe diese Anleitung etwas umgebaut.

https://www.hanseatic-business-school.co...countdown/ 

Kann mir jemand helfen dass bei dieser Kombination keine Speichern-Frage komt wenn ich manuell nichts ändere?

Danke!
Antworten Top
#5
Hallöchen,

ungefähr so

Sub Datum()
Dim bolSaved As Boolean
bolSaved = ThisWorkbook.Saved
Tabelle1.Range("A1").Value = Time
Range("A2") = Now
ThisWorkbook.Saved = bolSavedEnd Sub
End Sub

Sub Countdown()
Dim bolSaved As Boolean
bolSaved = ThisWorkbook.Saved
NextTime = Now + TimeValue("00:00:01")
Application.OnTime NextTime, "Countdown"
ActiveSheet.Calculate
Range("A2") = Now
ThisWorkbook.Saved = bolSavedEnd Sub
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#6
Hi, 

Danke für deine Hilfe, konnte es einbauen, hat funktioniert. 

Leider öffnet sich die Tabelle immer noch nachdem sie automatisch geschlossen wird. 

Egal, dann soll es nicht sein. Danke für Eure Mühe.

VG
Antworten Top
#7
Hallo,

(05.04.2022, 06:18)Cobrameister schrieb: Leider öffnet sich die Tabelle immer noch nachdem sie automatisch geschlossen wird. 

Guckst Du: Applicaton.OnTime - Zeitgesteuerte Makros

Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste