Импорт данных из Excel в комбинированный список в Word
Я пытаюсь добавить значения из столбца листа Excel в поле со списком в пользовательской форме, которую я создал в документ Word с использованием VBA.
Если бы это был просто комбинированный список в форме пользователя Excel, то все, что мне нужно было написать:
Range("A1").Select
Do Until Selection.Value = Empty
ComboBox1.AddItem Selection.Value
Selection.Offset(1, 0).Select
Loop
Как я могу сделать то же самое, когда я использую форму пользователя в Word и хочу получать данные из внешнего файла Excel?
1 ответ
Вот пример, который позволит вам открыть файл Excel и просмотреть нужный диапазон. Это было сделано для выпадающего списка, но похоже:
Option Explicit
Sub TestDropDownFromExcel()
Dim counter As Long
Dim xlApp As Excel.Application
Dim xlBook As Workbook
Dim xlSheet As Worksheet
Dim oCC As ContentControl
Set oCC = ActiveDocument.ContentControls(1)
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("...") 'Location of your file
If xlBook Is Nothing Then
Exit Sub
End If
Set xlSheet = xlBook.Sheets(1)
'Empty the list of items in the dropdown
oCC.DropdownListEntries.Clear
'Populate your items here
xlApp.Visible = True
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
Вам нужно включить ссылку на Excel: сначала вам нужно установить ссылку (Меню: Инструменты-> Ссылки) на библиотеку объектов Microsoft Excel, затем вы можете получить доступ ко всем объектам Excel ( Как обращаться к объектам Excel в Access VBA?)
Смотрите также пример: Заполните Word Combobox данными Excel через VBA.