Свойство ComboBox.Column (Access)

Используйте свойство Column для ссылки на определенный столбец или сочетание столбцов и строк в поле со списком или списке с несколькими столбцами. Только для чтения, Variant.

Синтаксис

expression. Столбец (индекс, строка)

Выражение Переменная, представляющая объект ComboBox .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Индекс; Обязательный Long Длинное целое число, которое может варьироваться от 0 до параметра свойства ColumnCount минус один.
Row Необязательный Variant Целое число, которое может варьироваться от 0 до параметра свойства ListCount минус 1.

Замечания

Используйте 0 для ссылки на первый столбец, 1 — на второй столбец и т. д. Используйте 0 для ссылки на первую строку, 1 — на вторую строку и т. д. Например, в списке со столбцом идентификаторов клиентов и столбцом имен клиентов можно сослаться на имя клиента во втором столбце и пятой строке следующим образом:

 Forms!Contacts!Customers.Column(1, 4)

Используйте свойство Column , чтобы назначить содержимое поля со списком или списка другому элементу управления, например текстовому поле. Например, чтобы задать для свойства ControlSource текстового поля значение во втором столбце списка, можно использовать следующее выражение.

 =Forms!Customers!CompanyName.Column(1)

Если пользователь не сделал выбор при ссылке на столбец в поле со списком или списке, параметр свойства Column будет иметь значение NULL. Используйте функцию IsNull , чтобы определить, был ли сделан выбор, как показано в следующем примере.

 If IsNull(Forms!Customers!Country) 
   Then MsgBox "No selection." 
 End If

Примечание.

Чтобы определить, сколько столбцов содержит поле со списком или список, можно проверить параметр свойства ColumnCount .

Пример

В следующем примере свойства Column и ColumnCount используются для печати значений выделенного списка.

Public Sub Read_ListBox() 
 
 Dim intNumColumns As Integer 
 Dim intI As Integer 
 Dim frmCust As Form 
 
 Set frmCust = Forms!frmCustomers 
 If frmCust!lstCustomerNames.ItemsSelected.Count > 0 Then 
 
 ' Any selection? 
 intNumColumns = frmCust!lstCustomerNames.ColumnCount 
 Debug.Print "The list box contains "; intNumColumns; _ 
 IIf(intNumColumns = 1, " column", " columns"); _ 
 " of data." 
 
 Debug.Print "The current selection contains:" 
 For intI = 0 To intNumColumns - 1 
 ' Print column data. 
 Debug.Print frmCust!lstCustomerNames.Column(intI) 
 Next intI 
 Else 
 Debug.Print "You haven't selected an entry in the " _ 
 & "list box." 
 End If 
 
 Set frmCust = Nothing 
 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.