Как автоматично да запишете и затворите Excel файл след определено време на неактивност?
В някои случаи, като например оставяне на Excel файл на споделен диск, когато файлът все още се отваря от потребител, други не могат да редактират работната книга. И така, как автоматично да затворите файла след определено време на неактивност, за да улесните работата на другите? Тази статия ще ви помогне с метода VBA.
Автоматично запазване и затваряне на Excel файл след определено време на неактивност с VBA код
Автоматично запазване и затваряне на Excel файл след определено време на неактивност с VBA код
За автоматично запазване и затваряне на Excel файл след определено време на неактивност, моля, направете следното.
1. Отворете работната книга, от която се нуждаете, за да я направите автоматично запазена и затворена след определено време на неактивност. След това натиснете Друг + F11 ключове заедно, за да отворите Microsoft Visual Basic за приложения прозорец.
2. В Microsoft Visual Basic за приложения прозорец, моля, щракнете двукратно върху Тази работна книга в десния панел, за да отворите прозореца на кода. След това копирайте и поставете под VBA кода в прозореца на кода. Вижте екранна снимка:
VBA код 1: Автоматично запазване и затваряне на Excel файл след определено време на неактивност
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. След това продължете да щракате Поставете > модули копирайте и поставете кода по-долу в прозореца на модула. Вижте екранна снимка:
VBA код 2: Автоматично запазване и затваряне на Excel файл след определено време на неактивност
Sub SaveWork1()
'Updated by Extendoffice 2019/1/20
Application.DisplayAlerts = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub
4. Натисни Друг + Q клавиши едновременно, за да затворите Microsoft Visual Basic за приложения прозорец.
5. кликване досие > Save As > паса. Вижте екранна снимка:
6. В Save As диалогов прозорец, моля, изберете папка, за да запишете файла, наименувайте го, както е необходимо в полето Име на файл, изберете Работна книга с активирани макроси на Excel от Запази като тип падащ списък и накрая щракнете върху Save бутон. Вижте екранна снимка:
Отсега нататък всеки път, когато отваряте тази работна книга, a Kutools за Excel ще се появи диалогов прозорец. Моля, въведете времето, което ще запазите и въз основа на което ще затворите работната книга, след което щракнете върху OK бутон.
Работната книга ще бъде запазена и затворена автоматично след определеното време на неактивност. Вижте екранна снимка:
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!