2012-08-28 75 views
1

我想根據字符串值而不是索引位置簡單地在組合框中選擇一行。通過文本實現MS Access組合框選擇

我有一個組合框有3列,第一列是一個ID字段,另外兩個分別是名字和姓氏。

當盒子準備就緒時,我已經準備好了ID字段值,但不知道如何選擇它,而沒有做出一次一個一個檢查每個值的愚蠢循環。

+1

你想隱藏的ID字段,這樣就可以從組合框中選擇一個項目通過輸入一個字符串?我不確定你上次陳述的意思,你能澄清嗎? – gangreen

回答

0

對於綁定和未綁定的組合框,您都可以將該值設置爲與綁定列相匹配的任何值,並顯示相應的行。

Row source : SELECT ID, Surname FROM Table 
Bound Column : 1 
Column count : 2 
Column Widths : 0,2 

設置Combo:

Me.MyCombo = 21 

從與ID 21的記錄的姓將被顯示在組合。

到組合編程設置爲一列,你可以使用使用DLookup基於表連擊:

Me.MyCombo = DLookup("ID", "Table", "Surname='" & MyString & "'") 
+0

這是我正在尋找的功能。我希望DLookup能爲多個匹配返回一個數組。 http://support.microsoft.com/kb/99704 – ipatenco

+0

如果多個匹配是可能的,組合框沒有多大用處。你可以使用一個列表框和一個sql字符串:'Me.AListbox.RowSource =「SELECT ID,AText FROM ATable WHERE AText ='」&Somevar&「'」',或者你可以遍歷一個基於類似sql字符串的記錄集。 – Fionnuala