Я изменяю шаблон диаграммы Ганта Excel, который я нашел в сети для Vertex42 для дополнительной функциональности.
Одна из этих модификаций - это флажок внутри листа под названием «Конфигурация», который, когда отмечен, создает резервную копиюдиаграмму Ганта при каждом открытии документа.
По какой-то причине я не могу заставить эту простую задачу работать.
Я пробовал использовать оба флажка: «Управление формой» и «Управление ActiveX», сразные сообщения об ошибках.Насколько я могу судить, элементы управления Form не рекомендуются, поэтому я использую приведенный ниже код в объекте Excel ThisWorkbook, основываясь на том, что я видел в Интернете.
Private Sub Workbook_open()
Dim backupFilename As String
Dim formattedDateTime As String
If Sheets("Config").OLEObjects("AutoBackupCheckbox").Object.Value = True Then
formattedDateTime = Format(Now, "d-MMMM-yyyy, h:mm:ss")
backupfilename = Replace(ActiveWorkbook.Name, ".xlsm", " - backup " & DateTime & ".xlsm")
ActiveWorkbook.SaveCopyAs (backupfilename)
End If
End Sub
Этот код заставляет менясообщение об ошибке всякий раз, когда я открываю документ или запускаю отладчик,
Run-time error '1004':
Sorry, we couldn't find the <filename> - backup <day>-<month>-<year>, <hour>:<minute>:<seconds>.xlsm. Is it possible it was moved, renamed or deleted?
Есть идеи?
ОБНОВЛЕНИЕ: После запуска отладчика он жалуется на строку ActiveWorkbook.SaveAs
.
ОБНОВЛЕНИЕ 2: изменен формат 'backupFilename', чтобы удалить '.xlsm' в середине.
ОБНОВЛЕНИЕ 3: Заменена дата на дату / время без косой черты, и заменено SaveAs на SaveCopyAs.Обновлено сообщение об ошибке.