【问题标题】:Adding value to combobox based on recordset基于记录集向组合框添加值
【发布时间】:2018-02-22 09:29:56
【问题描述】:

我有一个组合框,他的行源设置为:-

Set rs = CurrentDb.OpenRecordset("SELECT...")
Set cboBroker.Recordset = rs

我是否可以在列表顶部添加一个名为“<ALL>”的值,如果可以,如何?

【问题讨论】:

    标签: ms-access combobox vba ms-access-2016


    【解决方案1】:

    如果组合框行源直接绑定到记录集,则需要在记录集中进行任何修改。不过你可以这样做:

    SELECT "<ALL>" FROM MSysObjects WHERE ID = (SELECT First(ID) FROM MSysObjects)
    UNION ALL
    SELECT ... 
    

    但你不应该。这会降低一些性能,并且会使添加列变得困难。

    相反,您可以使用不可编辑的值列表,并像这样填充它:

    cboBroker.RowSource = ""
    cboBroker.AddItem "<ALL>"
    Set rs = CurrentDb.OpenRecordset("SELECT...")
    Do While Not rs.EOF
       cboBroker.AddItem rs.Fields(0).Value
       rs.MoveNext
    Loop
    

    【讨论】:

      猜你喜欢
      • 2021-05-25
      • 1970-01-01
      • 2020-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多