2016-06-06 4 views
0

У меня есть несвязанный комбинированный ящик, который я заполняю при загрузке формы. Я хочу, когда пользователь выбирает текст со списком, я должен иметь доступ к его значению. В этом случае выбранный текст элемента исчезает при выборе, но я могу получить доступ к его значению. Ниже приведены настройки поля со списком. Что делать, чтобы ящик со списком отображал выделенный текст, и в то же время я должен иметь доступ к выбранному значению?Unbound Combo box: Выбранный текст не отображается

ID Process 
1 a 
2 b 
3 c 
  • Column Count - 2
  • ширины столбца - 0" , 1"
  • Row Source Type - Table/Query

    Private Sub Form_Load() 
    
    Dim strSQL As String 
    strSQL = "Select ID as F1 , process_name as F2 from tblProcess" 
    
    Set objRecordset = New ADODB.Recordset 
    objRecordset.Open strSQL, objConnection, adOpenKeyset, adLockOptimistic 
    
    If Not (objRecordset.EOF And objRecordset.BOF) Then 
        Set Me.cmbProcess.Recordset = objRecordset 
    End If 
    
    objRecordset.Close 
    Set objRecordset = Nothing 
    End Sub 
    

Появится окно со списком после выбора

enter image description here

Combo свойства коробки

enter image description here

+0

Изменение цветовых свойств поля со списком: Цвет Назад и/или Цвет Переднего плана. – HansUp

+0

Я попробовал изменить цвет, но его же. Когда я пытаюсь получить доступ к значению и тексту поля со списком после выбора .... текст '(Form_frmAudit.cmbProcess.Text)' возвращает пустую строку, тогда как значение '(Form_frmAudit.cmbProcess.value)' возвращает правильное значение. – Santosh

+0

Вы говорите о том, что видит пользователь или что возвращается свойством '.Text' комбо? – HansUp

ответ

0

Работает ли правильно, если вы пропустите весь objRecordset блок кода и вместо того, чтобы просто вставить строку после strSQL определяется:

Me.cmbProcess.RecordSource = strSQL 
Смежные вопросы