【问题标题】:Tagging Records in a Continuous Form以连续形式标记记录
【发布时间】:2009-12-01 09:13:20
【问题描述】:

在连续子表单中,我根据 DISTINCT 查询显示记录。因为它是不同的,所以每一行都包含记录 ID。

有谁知道添加复选框(或类似的)的方法,以便用户可以选择任何记录,然后这些记录将用于通过代码创建新记录?

我更喜欢使用列表的子表单,因为它具有许多列排序和过滤功能。

MTIA

【问题讨论】:

    标签: ms-access tagging


    【解决方案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

    【讨论】:

    • 不幸的是,这无济于事,因为用户随后被限制为连续记录。此外,它不是特别直观。我正在尽我所能以某种方式“标记”一个隐藏字段 - 然后“复选框”可以只是一个显示 Wingding 相关复选框字符的文本框。我一直在尝试使用“行突出显示”方法,其中未绑定的字段设置为其行号。在这种情况下,每一行中的每个未绑定字段都具有不同的值(即,它的行数)。只是似乎无法到达那里。
    • 我很确定你无法使用未绑定的控件和连续的表单。我猜您可以在选择记录时将相关记录作为值复制到主窗体上的列表框。
    【解决方案2】:

    仅供参考,我决定使用 Windows ListView OCX 控件,因为它可以为每一行添加一个复选框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-26
      • 2017-08-17
      • 2013-04-04
      • 2021-06-13
      • 2020-06-18
      • 2010-09-25
      • 1970-01-01
      相关资源
      最近更新 更多