如果您设置文档的 Title 属性,当您选择 Save As 时,这就是将使用的文档名称。您还可以设置默认保存位置。在 VBA 中
Set doc = ActiveDocument
sTitle = doc.BuiltInDocumentProperties("Title").Value
doc.BuiltInDocumentProperties("Title").Value = "A different title"
但是,这仅适用于第二次(及以后)保存尝试。第一次尝试将始终使用模板中的标题(如果有)或文档第一行中的内容(如果没有)。请参阅此答案的结尾以获得更好的解决方案。
但是请注意,您必须在“另存为”之前对文档进行一些更改才能使新标题生效。
Sub SetSummaryInfo()
Dim dp As Object
Dim sTitle As String
If Documents.Count > 0 Then
Set dp = Dialogs(wdDialogFileSummaryInfo)
' Retrieve value of "Title" into a variable.
sTitle = dp.Title
' Set "Title" to a new value.
dp.Title = "My Title"
' Set the value without showing the dialog.
dp.Execute
' Save the changes
'ActiveDocument.Save
End If
End Sub
正如 C# 中的 HCL 所说,您可以使用以下代码设置默认文件名(仅用于对话框):
dynamic dialog = wordApp.Dialogs[WdWordDialog.wdDialogFileSummaryInfo];
dialog.Title = "MyTitle";
dialog.Execute();
这将打开标准的“另存为”对话框,设置默认文件名(不是您对“标题”属性的期望,但这就是它的作用),然后打开对话框。