У меня есть Listbox (go figure), и этот список не привязан к RecordSource и динамически построен на основе других вариантов управления конечным пользователем. Раньше у меня не было большой проблемы с этим, но с этой текущей динамической ситуацией запроса столбцы не были окончательно постоянными. Поскольку используемый RecordSet является запросом CrossTab, одна четверть запроса CrossTab может содержать 5 столбцов, следующие 8 столбцов и следующие 3 столбца.Список не отображается Заголовки
Большинство из реализованных мной ListBox имеют статическое количество столбцов, которые я могу предсказать, но в этой ситуации я не могу точно предсказать количество столбцов.
Я поставил ColumnHeads
свойство Yes
, так это еще не проблема, и я даже сбросить ColumnHeads
свойства против в VBA до AddItem
операции я установка.
Logic Я использую для работы в/вокруг Listbox в вопросе (lstCategoryPG):
If lstCatType.ListIndex >= 0 Then
'Application.Echo False 'Turn off Screen Updating
Dim crt As String: crt = "crt_CategoryPG" 'Cross-Tab Query
Dim cttbl As String: cttbl = CreateCTTable(crt) 'Create Table to store the Cross-Tab information
Dim sql As String: sql = SQLSelect(cttbl)
Dim flds As DAO.Recordset: Set flds = CurrentDb.OpenRecordset(sql)
Dim fldwd As String 'Store the Field Width pattern
fldwd = "0"";0"";2""" 'Handles `tid` and `cid` columns in the ListBox
'Assign the number of columns based on the number of fields in CTtable
lstCategoryPG.ColumnCount = flds.Fields.Count
Dim fld As Long
For fld = 3 To (flds.Fields.Count - 1)
fldwd = fldwd & ";.75"""
Next
flds.Close: Set flds = Nothing
lstCategoryPG.ColumnWidths = fldwd
sql = SQLSelect(cttbl, , ("tid = " & lstCatType.Value))
lstCategoryPG.Enabled = True
lstCategoryPG.ColumnHeads = True
RefreshControl CurrentDb, lstCategoryPG, sql, , False
'Application.Echo True 'Turn Screen Updating back on
End If
В чем вопрос и почему вы не хотите использовать подформу, которая была бы намного проще? – Fionnuala
Мне нужно сделать элемент редактируемым .... через всплывающее окно, так как вы не можете обновить сингулярные значения, отображаемые в CrossTab – GoldBishop
. Я использую всплывающее окно для внесения изменений от конечного пользователя и логически группировать их для обновлений. – GoldBishop