Уважаемые эксперты Excel!
Помогите пожалуйста решить проблему. Есть макрос, который запускается по кнопке, берет значение из ячейки (название новой книги) и создает ее. Работа происходит в одной общей папке.
Я нашел его на просторах. После эксплуатации файла, выяснилось, что необходимо его немного дополнить.
Макрос работает отлично, вопросов нет. Создается новая книга (с поддержкой макросов) с названием из ячейки, в этой же папке.
Но когда предположим открыты обе книги и основная и созданная, например, я редко, но забывал, что новая книга уже создана и открыта - нажимал на кнопку создать еще раз - сразу получал ошибку!
1. Помогите переделать макрос, чтобы при нажатии кнопки создать новую книгу, он проверял не создана ли уже эта книга.
2. Если она создана, то проверял не открыта ли она.
3. И если она создана и открыта писал сообщение, что книга создана (в случае, если книга создана и закрыта тоже писал сообщение, что книга создана)
Важно: когда новая книга создана, но не открыта, ошибки не возникает, новая книга создается просто еще раз.
Если же книга создана и открыта - только тогда появляется ошибка!
Private Sub CommandButton1_Click()
'Объявление переменных
Dim CellValue As String
Dim Path As String
Dim FinalFileName As String
'Временно отключаем показ вспомогательных сообщений
Application.DisplayAlerts = False
'Задаём каталог сохранения файла (в данном случае текущий каталог)
Path = ThisWorkbook.Path & "\"
'Получаем значение ячейки
CellValue = Range("A1")
'Формируем итоговый путь и название файла
FinalFileName = Path & CellValue
'Сохраняем файл
ActiveWorkbook.SaveAs Filename:=FinalFileName, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled 'Для сохранения файла с макросом
'Сообщение с результатом выполнения процедуры
MsgBox "Файл успешно сохранен с названием - " & CellValue, , "Результат"
'Включаем вывод сообщений
Application.DisplayAlerts = True
End Sub
Помогите пожалуйста решить проблему. Есть макрос, который запускается по кнопке, берет значение из ячейки (название новой книги) и создает ее. Работа происходит в одной общей папке.
Я нашел его на просторах. После эксплуатации файла, выяснилось, что необходимо его немного дополнить.
Макрос работает отлично, вопросов нет. Создается новая книга (с поддержкой макросов) с названием из ячейки, в этой же папке.
Но когда предположим открыты обе книги и основная и созданная, например, я редко, но забывал, что новая книга уже создана и открыта - нажимал на кнопку создать еще раз - сразу получал ошибку!
1. Помогите переделать макрос, чтобы при нажатии кнопки создать новую книгу, он проверял не создана ли уже эта книга.
2. Если она создана, то проверял не открыта ли она.
3. И если она создана и открыта писал сообщение, что книга создана (в случае, если книга создана и закрыта тоже писал сообщение, что книга создана)
Важно: когда новая книга создана, но не открыта, ошибки не возникает, новая книга создается просто еще раз.
Если же книга создана и открыта - только тогда появляется ошибка!
Private Sub CommandButton1_Click()
'Объявление переменных
Dim CellValue As String
Dim Path As String
Dim FinalFileName As String
'Временно отключаем показ вспомогательных сообщений
Application.DisplayAlerts = False
'Задаём каталог сохранения файла (в данном случае текущий каталог)
Path = ThisWorkbook.Path & "\"
'Получаем значение ячейки
CellValue = Range("A1")
'Формируем итоговый путь и название файла
FinalFileName = Path & CellValue
'Сохраняем файл
ActiveWorkbook.SaveAs Filename:=FinalFileName, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled 'Для сохранения файла с макросом
'Сообщение с результатом выполнения процедуры
MsgBox "Файл успешно сохранен с названием - " & CellValue, , "Результат"
'Включаем вывод сообщений
Application.DisplayAlerts = True
End Sub