Как загрузить данные в Excel Userform Listbox из формы Access напрямую?
Я хочу загрузить некоторые данные из Access в Excel Userform ListBox. Теперь я создаю ADODB.Connection
для подключения доступа и создания ADODB.Recordset
для хранения данных, во-первых. Во-вторых, я использую Range("xx").CopyFromRecordset
чтобы скопировать данные в Excel. В-третьих, назовите этот диапазон excel как « ResultSet
». В-четвертых, используйте Me.ListName.RowSource="ResultSet"
для копирования данных с листа excel в ListBox.
Как вы можете видеть, я использую четыре шага, чтобы закончить эту работу. Есть ли способ пропустить шаги 2 и 3, скопировав данные из Access в ListBox напрямую?
благодаря
- Изменения отслеживания Excel VBA
- Переменная обмена Excel VBA в пределах подписки Userfrom
- Пользовательская форма VBA: доступ к различным диаграммам в зависимости от Combobox
- Excel VBA: копирование цвета из ячейки. Interior.Color в MSForms.Label.BackColor
- Удалите всю строку на основе дубликата в ячейке без той, которая имеет конкретное значение ячейки
- Internet Explorer не будет закрыт после завершения моего модуля
- VBA Excel: аргумент не является необязательным
- VBA - Как я могу дать код ошибки на основе суммы моих значений текстового поля в форме пользователя?
- Заполнение вопросов ComboBox - дублирование значений при каждом выборе поля, а именованный диапазон не заполняется
- Мой ComboBox не отображает значения, которые я добавил в VBA
- VBA - события прерывания в динамически создаваемом текстовом поле
- Код для автоматического обновления Userform
- Добавление прослушивателя событий к нескольким спискам
Я нашел одну статью. Ниже приведен код, и это ссылка .
With rs .MoveLast NoOfRecords = .RecordCount .MoveFirst End With 'Set the number of ListBox columns = number of fields in the recordset ListBox1.ColumnCount = rs.Fields.Count 'Load the listbox with the retrieved records ListBox1.Column = rs.GetRows(NoOfRecords)
благодаря
Для одного списка столбцов
Попробуйте вручную отредактировать список, используя цикл:
Me.ListName.Clear 'First clear existing list With Me.ListName While rs.EOF = False .AddItem rs.Fields(0).Value rs.MoveNext Wend End With
Поменяйте этот код на шаги 2-4.