Подскажите, в коде будет генерироваться путь сохранения и название файла *.doc, нужно открыть по сгенерированной маске диалог SavcAs, доя того, чтобы пользователь либо принял рекомендованный путь и название, либо изменил на свое.
Написал вам два письма на почту с заголовком "Письмо с Форума по VBA, Excel и Word". Написал именно на почту, а не на форум.
Отобразить диалог "Сохранить как" и подставить в него путь и имя файла можно так. При этом путь должен существовать, чтобы он отобразился в этом диалоге. Если путь не существует, то Ворд отобразит другую папку.
Макрос
Sub Макрос()
With Application.FileDialog(msoFileDialogSaveAs)
.Title = "Сохранить как"
.InitialFileName = "C:\Users\User\Desktop\Новая папка\Файл.docx"
If .Show = False Then
Exit Sub
End If
End With
End Sub
После вызова диалога есть два варианта.
Вариант 1. Сохранение файла, используя диалог "Сохранить как"В этом варианте нужно использовать метод Execute.
Макрос
Sub Макрос()
With Application.FileDialog(msoFileDialogSaveAs)
.Title = "Сохранить как"
.InitialFileName = "C:\Users\User\Desktop\Новая папка\Файл.docx"
If .Show = False Then
Exit Sub
End If
.Execute
End With
End Sub
Вариант 2. Сохранение файла с использованием Document.SaveAsС помощью диалога "Сохранить как" можно записать в переменную полное имя файла, которое указал пользователь в диалоге "Сохранить как". Затем можно с помощью макроса сделать анализ этого полного имени файла и принять решение: сохранять файл или нет.
Макрос
Sub Макрос()
Dim Fn As String
With Application.FileDialog(msoFileDialogSaveAs)
.Title = "Сохранить как"
.InitialFileName = "C:\Users\User\Desktop\Новая папка\Файл.docx"
If .Show = False Then
Exit Sub
End If
Fn = .SelectedItems(1)
End With
ActiveDocument.SaveAs FileName:=Fn, FileFormat:=wdFormatXMLDocument
End Sub