Как создать всплывающее сообщение VBA на основе имени файла? - PullRequest
0 голосов
/ 15 января 2019

Я создал шаблон электронной таблицы, который я хотел бы, чтобы пользователь сразу же сохранил под новым именем. У меня есть код VBA, который создает новое имя и помещает его в диалоговое окно «Сохранить как».

Я хотел бы, чтобы всплывающее окно сообщало пользователю «Сохранить как» файл, как только файл открывается. Я хотел бы, чтобы он отображался только в том случае, если шаблон открыт, а не после того, как он сохранен с новым именем.

Private Sub Workbook_Open()
MsgBox "You MUST use 'Save As' to save this file with a new name before editing"
End Sub

После сохранения файла под другим именем всплывающее окно не отображается. Я думал, что сабвуфер может прочитать имя файла и, если оно соответствует предопределенному имени шаблона "Field Time Template.xlxm".

Это может быть новый вопрос, но было бы также неплохо иметь скрипт, позволяющий предупреждать или уведомлять пользователя, если он нажимает «Сохранить» вместо «Сохранить как»

Спасибо за помощь.

1 Ответ

0 голосов
/ 15 января 2019

Вы можете подумать об открытии приглашения сохранить как при открытии шаблона после проверки названия вашей активной рабочей книги. После отмены или перезаписи вашего шаблона книга закроется.

Private Sub Workbook_Open()

NewName = ActiveWorkbook.Sheets(1).Cells(1, 27).Value
If ThisWorkbook.Name = "Field Time Template.xlsm" Then      
    If Application.Dialogs(xlDialogSaveAs).Show(NewName) Then
        If ThisWorkbook.Name = "Field Time Template.xlsm" Then ActiveWorkbook.Close savechanges:=False
    Else
        ActiveWorkbook.Close savechanges:=False
    End If
End If

End Sub

Таким образом, я думаю, ваш второй вопрос больше не будет иметь значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...