【问题标题】:Ms Access AddItem with VBA使用 VBA 访问 AddItem 女士
【发布时间】:2012-08-29 00:59:45
【问题描述】:

我有一个表单,上面有一个按钮。该按钮基本上将记录从一个表复制到另一个。 在读取和复制记录时,还会检查特定值。例如。如果表中的一个字段的值为“”,那么它应该调用另一个允许我输入日期的表单。输入日期并关闭表格后,程序将继续进行复制。 也可能发生正在复制的表中的关键字段是重复的。在这种情况下,我应该启动一个“列表框表单”,其中包含一个显示重复记录值的列表框。然后我应该选择我需要复制的正确记录。

 Dim NumberCount As Long
     NumberCount = RecordsetElementValue.RecordCount
     If NumberCount > 1 Then
         With Form_F_ListBox.List30
             RecordsetElementValue.MoveFirst
             Do
                With Forms!F_ListBox.List30.AddItem(RecordsetElementValue!E_ElementValue)
                End With
                RecordsetElementValue.MoveNext
             Loop Until RecordsetElementValue.EOF = True
             DoCmd.OpenForm "F_ListBox", acNormal
         End With
     End If

上面的代码示例是我所拥有的,以防有重复记录(NumberCount > 1) 我的 F_ListBox 表单中的列表框应该填充我的记录集中的值。

我现在遇到运行时错误 6014。必须将 RowSourceType 属性设置为“值列表”才能使用此方法。

我做错了什么?

【问题讨论】:

    标签: ms-access-2010


    【解决方案1】:

    在 MS Access 中设置组合框或列表框的行源的常用方法是使用 SQL 语句,但是,您也可以使用列表。这由行源类型控制。

    Me.MylistBox.RowSourceType = "Value List"
    

    从您的笔记看来,行源的 SQL 语句似乎更容易:

    Me.MylistBox.RowSource = "SELECT ID FROM MyTable"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-05
      • 2013-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多