如何在特定空闲时间后自动保存并关闭 Excel 文件?
当我们将 Excel 工作簿保存在共享内存中时,如果一人访问工作表,其他人将无法保存工作表;这个问题可以通过在一段时间后自动关闭工作表来解决。本教程将帮助您了解如何才能在特定空闲时间后自动保存并关闭 Excel 文件。
在特定空闲时间后自动保存并关闭 Excel 文件
在这里,我们将首先为工作表插入 VBA 代码,然后创建一个 VBA 模块,然后运行它来完成我们的任务。让我们来看一个简单的过程,了解如何在一段时间后自动保存并关闭 Excel 工作簿。我们将使用 VBA 应用程序的帮助来完成我们的过程。
步骤 1
让我们考虑任何 Excel 工作簿,右键单击工作表名称,然后选择“查看代码”以打开 VBA 应用程序。然后,双击此工作簿,并在文本框中键入“Program1”,如下图所示。
示例
Dim xTime As String Dim xWB As Workbook Private Sub Workbook_Open() 'Updated by Nirmal On Error Resume Next xTime = Application.InputBox("Please specify the idle time:", "Plese enter the duration", "00:00:30", , , , , 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
步骤 2
现在单击“插入”,选择“模块”,并在文本框中键入“Program 2”,如下图所示。
示例
Sub SaveWork1() 'Updated by Nirmal Application.DisplayAlerts = False ActiveWorkbook.Save ActiveWorkbook.Close Application.DisplayAlerts = True End Sub
步骤 2
将工作表另存为宏启用模板,关闭工作表,然后重新打开工作表。然后单击“启用代码”,然后输入您希望工作表打开的时间,然后单击“确定”。
结论
在本教程中,我们使用了一个简单的示例来演示如何在特定空闲时间后自动保存并关闭 Excel 工作簿。
广告