#vba #ms-word
#vba #ms-word
Вопрос:
Кулак, мои извинения, если на этот вопрос был дан ответ в другой теме, я искал без какой-либо удачи, и я надеюсь, что я разместил этот вопрос в нужном месте.
В принципе, у меня есть документ Word (Office 365), который я хочу использовать при сохранении документа. Я хочу, чтобы имя файла было следующим: ТЕКУЩАЯ ДАТА и СТАТИЧЕСКИЙ ТЕКСТ И СВОЙСТВО ДОКУМЕНТА (ABSTRATC) и DOCUMENT_PROPERTY (AUTHOR)
- ТЕКУЩАЯ ДАТА = гггг.мм.дд
- СТАТИЧЕСКИЙ ТЕКСТ = просто пользовательский текст, который я добавляю и всегда буду, просто обычный текст.
- СВОЙСТВО ДОКУМЕНТА (ABSTRATC) = В документе Word я добавил много полей «Свойства документа». В данном случае «Абстрактный». И я хочу, чтобы это было в имени файла.
- DOCUMENT_PROPERTY(AUTHOR) = В документе Word я добавил много полей «Свойства документа». В данном случае «Автор». И я хочу, чтобы это было в имени файла.
Я вставил код VBA, который успешно выполняет все, кроме добавления свойств документа в имя файла. Причина, по которой я использую свойства документа, заключается в том, что я хочу, чтобы моя главная страница в Word автоматически заполнялась при заполнении страницы 2. Поэтому я хочу, чтобы эти поля также попадали в имя файла.
Это то, что можно сделать?
Public Sub FileSave1()
Dim xDlg As Dialog
Dim xTitle As String
On Error Resume Next
xTitle = ActiveDocument.BuiltInDocumentProperties("Title").Value
xTitle = xTitle amp; "" amp; Format((Year(Now() 1) Mod 100), "20##") amp; "." amp; _
Format((Month(Now() 1) Mod 100), "0#") amp; "." amp; _
Format((Day(Now()) Mod 100), "0#") amp; " Report - Firealarm - Building A"
Set xDlg = Dialogs(wdDialogFileSaveAs)
xDlg.Name = xTitle
xDlg.Show
End Sub
Комментарии:
1. У вас уже есть код для получения значения встроенных свойств в опубликованном вами коде. Просто замените
Title
на имя свойства, значение которого вы хотите.2. Спасибо, я увидел, что now xD раньше этого не делал. Просто делаю это, чтобы решить эту проблему. Теперь это работает.