Чтобы применить изменение шрифта, необходимо указать точный диапазон, к которому он должен применяться. Теоретически это будет:
ContentControl.Range.Font.Size = 7
Однако управление содержимым DropDown является особым случаем. В моих тестах, если я применяю форматирование шрифта непосредственно к элементу управления контентом, это влияет на только список выборов и текст-заполнитель. Однако при выборе записи форматирование возвращается к формату окружающего текста.
Дальнейшие эксперименты показали, что также необходимо создать стиль символов в документе, который содержит желаемое форматирование. Это должно быть применено к элементу управления контентом и , а также к прямому форматированию.
Вот код для применения форматирования
DDown.DropdownListEntries.Add "Shipping within 7 days"
DDown.DropdownListEntries.Add "On schedule"
DDown.DropdownListEntries.Add "On Hold"
DDown.DefaultTextStyle = "Test7"
DDown.Range.Font.Size = 7
DDown.Range.Font.Italic = True
где "Test7" - это имя стиля, которое я создал в тестовом документе.
Если стиль не может быть предварительно определен в документе, его нужно будет создавать на лету. Вот пример кода для этого. Следующая строка должна предшествовать циклу (ее нужно выполнить только один раз), но следовать коду, который открывает / создает документ Word:
CreateFont7Style ActiveDocument, "DdFont7" 'If the code already has a Document object, use that, not ActiveDocument
(Не забудьте заменить имя стиля, указанное здесь, на имя стиля в строке кода выше, которая применяет стиль к раскрывающимся элементам управления содержимым!)
Код для CreateFont7Style
(который вы можете назвать как угодно, просто не забудьте изменить имя в обоих местах):
Sub CreateFont7Style(doc As Word.Document, styleName As String)
Dim st As Word.style
Dim fontSize As Long
Dim bItalic As Boolean
fontSize = 7
bItalic = True
Set st = doc.styles.Add(styleName, Word.WdStyleType.wdStyleTypeCharacter)
st.Font.Size = fontSize
st.Font.Italic = bItalic
End Sub