
У меня Excel 2010. Я сталкиваюсь с ситуациями, когда люди уходят с работы и оставляют книгу Excel на общем файловом сервере открытой исключительно; в результате другие пользователи не могут редактировать книгу. Как мне смягчить эту проблему?
решение1
Рекомендуемое решение вашей проблемы — разрешить нескольким пользователям редактировать таблицу Excel одновременно. СмотретьО совместных рабочих тетрадяхв справке Excel для получения подробной информации. Суть этого подхода заключается в том, чтобы перейти на вкладку «Обзор» на ленте Excel, а затем нажать кнопку «Поделиться книгой» в разделе «Изменения».
В любом случае, попробуйте использовать функцию «Общие рабочие книги» в качестве основного решения. Читайте дальше, только если вы уже пробовали Общие рабочие книги и не смогли удовлетворить свои потребности.
Если по какой-то причине это не сработает в вашей ситуации (некоторые функции рабочей книги несовместимы с общими рабочими книгами), попробуйте этоVBA-решение:
По моему скромному мнению, это крайне неразумно с точки зрения защиты ваших данных.
Представьте себе ситуацию, когда пользователь случайно удалил много данных и сидит, обхватив голову руками, размышляя, что делать и когда признаться. Теперь мы все знаем, что вы можете просто закрыть книгу, не сохраняя изменения, и мы в безопасности, но при рассмотрении следующего шага этот код выполняется, и теперь у вас будет очень плохой день. Сказав это, попробуйте это:-
ALT+F11, чтобы открыть редактор VB. Дважды щелкните «ThisWorkbook» и вставьте первые 2 модуля справа.
Private Sub Workbook_Open()
StartTimer
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
StartTimer
End Sub
Теперь щелкните правой кнопкой мыши по модулю «ThisWorkbook», вставьте его и вставьте этот код. Сохраните, закройте и снова откройте книгу. Через 15 минут бездействия она сохранится и закроется автоматически.
Const idleTime = 900 'seconds
Dim Start
Sub StartTimer()
Start = Timer
Do While Timer < Start + idleTime
DoEvents
Loop
Application.DisplayAlerts = False
ActiveWorkbook.Close SaveChanges:=True
Application.DisplayAlerts = True
End Sub