2009-11-28 62 views
1

在連續子窗體中,我顯示基於DISTINCT查詢的記錄。因爲它是獨特的,所以每一行都包含一個記錄ID 而不是以連續形式標記記錄

有沒有人知道添加複選框(或類似)的方式,以便用戶可以選擇任何記錄,然後通過代碼創建新記錄?

我更喜歡將子窗體用於列表,因爲它具有許多列排序和過濾功能。

MTIA

回答

0

僅供參考,我決定使用Windows ListView OCX控件,因爲它提供了爲每行添加複選框的功能。

1

根據需要創建記錄什麼,這樣的樣本可能適合:

Function DisplaySelectedCompanyNames() 
    Dim i As Long 
    Dim F As Form 
    Dim RS As Recordset 

    '' Get the form and its recordset. 
    Set F = Forms![Customers1] 
    Set RS = F.RecordsetClone 

    '' Move to the first record in the recordset. 
    RS.MoveFirst 

    '' Move to the first selected record. 
    RS.Move F.SelTop - 1 

    '' Enumerate the list of selected records presenting 
    '' the CompanyName field in a message box. 
    For i = 1 To F.SelHeight 
    MsgBox RS![CompanyName] 
    RS.MoveNext 
    Next i 

End Function 

更多信息:http://support.microsoft.com/kb/208502

+0

不幸的是,這並不會幫助,因爲用戶然後被限制爲連續的記錄。另外,它並不特別直觀。我正在盡一切可能以某種方式'標記'一個隱藏的字段 - '複選框'可以只是一個顯示Wingding相關複選框字符的文本框。 我一直在嘗試使用'行高亮'方法,其中一個未綁定的字段設置爲其行號。這是每行中每個未綁定字段具有不同值(即,其行數)的情況。 只是似乎無法完成。 – maxhugen 2009-11-29 03:10:34

+0

我相當確信你無法獲得任何與未綁定控件和連續表單。我想你可以將相關記錄複製到主窗體上的列表框中作爲選擇記錄時的值。 – Fionnuala 2009-11-29 11:42:02