Настройка метаданных в Word и извлечение в Excel

#vba #metadata #excel-2016 #word-2016

Вопрос:

Я пытаюсь написать программу, которая обновляет метаданные документа Word с помощью окон управления содержимым. Затем документ Excel просматривает каталог, содержащий эти документы, и каталогизирует их по метаданным. В Word я могу задать встроенные свойства в подразделе DocumentBeforeSave с помощью…

 Application.ActiveDocument.BuiltInDocumentProperties("Keywords").Value = _
Application.ActiveDocument.SelectContentControlsByTitle("Tags").Item(1).Range.Text
 

и извлеките их в Excel с помощью командной консоли…

 Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(WB.Path amp; "QA")

For Each strFileName In objFolder.Items
     inputStr = objFolder.GetDetailsOf(strFileName, 18) 'Tags
     '...
     '...

next strFileName
 

Проблема в том, что в функции «GetDetailsOf» есть индексы, которые я хочу использовать, но не могу понять, как установить в Word. Например, я хотел бы задать поля Подразделение (получить данные индекса 155), Группа (172), Программа (277) и Вложения (219). Как вы устанавливаете такие свойства, которые не являются встроенными?

Комментарии:

1. Вы можете использовать пользовательские свойства документа. docs.microsoft.com/en-us/office/vba/api/…

2. Классно! Спасибо за указатель. Я думаю, что это должно сработать для меня.