2016-10-03 89 views
0

我是新來的MS訪問窗體,我創建了一個組合框,自動填充我正在尋找的一些東西,基本上和名稱,電話號碼和檢出日期。我爲「check in date」添加了另一個文本框,我可以輸入日期,但它會更新我從中提取信息的表中的第一條記錄,而不是自動填充組合框顯示的記錄。任何人都知道一個修復更新記錄,自動填充顯示與表的頂部記錄?微軟訪問組合框

Private Sub Combo0_Change() 

Me.txtfname = Me.Combo0.Column(1) 
Me.txtlname = Me.Combo0.Column(2) 
Me.txtphone = Me.Combo0.Column(3) 
Me.txtpump = Me.Combo0.Column(4) 
Me.txtdateissue = Me.Combo0.Column(5) 
Me.txtduedate = Me.Combo0.Column(6) 
Me.txtCheckInDate = Me.Combo0.Column(7) 

End Sub 




Private Sub Combo0_Click() 

End Sub 

Private Sub txtCheckInDate_Change() 

End Sub 

enter image description here

+0

請編輯您的問題,以便包括[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 – MJH

+0

您的組合框只填寫您當前打開的記錄(即第一條記錄)。這就是爲什麼只有最高記錄正在更新。您需要首先觸發您想要更新的記錄(研究docmd.findrecord),然後更新您當前的記錄。我假設你的表單綁定到你正在更新的表上? 其他選項是改變你的表格的記錄來源 – geeFlo

+0

是的,它是綁定到表 – Pmanivong

回答

0

得到Combo0組合框的來源,那麼在Private Sub txtCheckInDate_Change()功能,其源更改爲源+你的過濾器,像

Me.Combo0.RowSource = "[Existing Combo Source SQL]" & _ 
" WHERE [YourDateField] = #" & me.txtCheckInDate & "#" 
+0

我討厭聽起來像一個noob,但我很新的訪問,當你說combo0的來源,你是什麼意思? – Pmanivong

+0

屬性中的'RowSource' –