Wie speichere und schließe ich eine Excel-Datei nach einer bestimmten Leerlaufzeit automatisch?
In einigen Fällen, z. B. wenn eine Excel-Datei auf einer freigegebenen Festplatte verbleibt und die Datei noch von einem Benutzer geöffnet wird, können andere die Arbeitsmappe nicht bearbeiten. Wie kann man die Datei nach einer bestimmten Leerlaufzeit automatisch schließen, um die Arbeit anderer zu erleichtern? Dieser Artikel hilft Ihnen bei der VBA-Methode.
Automatisches Speichern und Schließen einer Excel-Datei nach einer bestimmten Leerlaufzeit mit VBA-Code
Gehen Sie wie folgt vor, um eine Excel-Datei nach einer bestimmten Leerlaufzeit automatisch zu speichern und zu schließen.
1. Öffnen Sie die Arbeitsmappe, die Sie benötigen, um sie nach einer bestimmten Leerlaufzeit automatisch zu speichern und zu schließen. Drücken Sie dann die Andere + F11 Tasten zusammen, um das zu öffnen Microsoft Visual Basic für Applikationen Fenster.
2. In dem Microsoft Visual Basic für Applikationen Fenster, bitte doppelklicken Sie auf das DiesesWorkbook im rechten Bereich, um das Code-Fenster zu öffnen. Kopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Codefenster ein. Siehe Screenshot:
VBA-Code 1: Automatisches Speichern und Schließen einer Excel-Datei nach einer bestimmten Leerlaufzeit
Dim xTime As String
Dim xWB As Workbook
Private Sub Workbook_Open()
'Updated by Extendoffice 2019/1/20
On Error Resume Next
xTime = Application.InputBox("Please specify the idle time:", "KuTool For Excel", "00:00:20", , , , , 2)
Set xWB = ActiveWorkbook
If xTime = "" Then Exit Sub
Reset
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
On Error Resume Next
If xTime = "" Then Exit Sub
Reset
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If xTime = "" Then Exit Sub
Reset
End Sub
Sub Reset()
Static xCloseTime
If xCloseTime <> 0 Then
ActiveWorkbook.Application.OnTime xCloseTime, "SaveWork1", , False
End If
xCloseTime = Now + TimeValue(xTime)
ActiveWorkbook.Application.OnTime xCloseTime, "SaveWork1", , True
End Sub
3. Klicken Sie dann weiter Insert > ModulenKopieren Sie den folgenden Code und fügen Sie ihn in das Modulfenster ein. Siehe Screenshot:
VBA-Code 2: Automatisches Speichern und Schließen einer Excel-Datei nach einer bestimmten Leerlaufzeit
Sub SaveWork1()
'Updated by Extendoffice 2019/1/20
Application.DisplayAlerts = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub
4. Drücken Sie die Taste Andere + Q Tasten gleichzeitig zum Schließen der Microsoft Visual Basic für Applikationen Fenster.
5 Klicken Reichen Sie das > Speichern unter > Entdecken. Siehe Screenshot:
6. In dem Speichern unter Wählen Sie im Dialogfeld einen Ordner zum Speichern der Datei aus, benennen Sie ihn nach Bedarf im Feld Dateiname und wählen Sie Excel Makroaktivierte Arbeitsmappe von dem speichern unter tippe Dropdown-Liste, und klicken Sie schließlich auf die Speichern Taste. Siehe Screenshot:
Von nun an wird jedes Mal, wenn diese Arbeitsmappe geöffnet wird, a Kutools for Excel Das Dialogfeld wird angezeigt. Bitte geben Sie die Zeit ein, die Sie speichern und schließen möchten, und klicken Sie dann auf OK .
Die Arbeitsmappe wird nach dieser festgelegten Leerlaufzeit automatisch gespeichert und geschlossen. Siehe Screenshot:
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!