Свойство 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 и обратная связь.