Hallo zusammen,
Eine von vielen Personen genutzte Datei muss ich mit einem Timer versehen.
Nach Ablauf des Timers von NoNet muss erst geprüft werden, ob die Datei schreibgeschützt war. Dann Schließen ohne Abfrage.
Wenn nicht schreibgeschützt: Speichern und Schließen ohne Abfrage.
Könnt Ihr mir da helfen?
Den zweiten Code habe ich auch in einem Forum gefunden, den könnte man vielleicht einbauen:
'****************************************************************
'* NoNet - www.excelei.de *
'* Erstellt/aktualisiert am : 06.11.2006 / 03.01.2007 *
'* *
'* Mappe wird nach Ablauf eines Zeitintervalls und Inaktivität *
'* während dieses Zeitintervalls gespeichert und geschlossen. *
'* Aktivitäten zum erneuten Starten des Zeitintervalls sind : *
'* - Eingaben *
'* - Berechnungen (auch F9-Taste) in DIESER Mappe *
'* - andere Zelle auswählen *
'* - Wechsel des Tabellenblattes *
'* - Tabellenblatt einfügen *
'* - Drucken / Seitenansicht *
'* - Speichern *
'* - Hyperlinks anklicken *
'****************************************************************
Public LastActivityTime
Public Intervall
Public Zeitpunkt
Sub TimeCheck()
Intervall = TimeValue("00:10:00") '05 Minuten Intervall
If Now - LastActivityTime > Intervall Then
'Speichern und Schließen wenn Intervall abgelaufen ist !
'**** Hier muss die Schreibschutz-Abfrage rein **********
ThisWorkbook.Save
ThisWorkbook.Close
Else
'Intervall ab letzer Aktivität neu setzen
Zeitpunkt = LastActivityTime + Intervall
Application.OnTime Zeitpunkt, "Timecheck"
End If
End Sub
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim wksBlatt As Worksheet
If ThisWorkbook.ReadOnly = False Then
For Each wksBlatt In ThisWorkbook.Worksheets
If wksBlatt.FilterMode Then wksBlatt.ShowAllData
Next wksBlatt
ThisWorkbook.Save
Else
ThisWorkbook.Saved = True
End If
End Sub
Danke euch im voraus.
Gruß, Margarete