У меня 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