带有VBA的Access AddItem Ms

时间:2012-09-04 11:09:10

标签: ms-access-2010

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

 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属性设置为' Value List'使用这种方法。

我做错了什么?

1 个答案:

答案 0 :(得分:3)

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

Me.MylistBox.RowSourceType = "Value List"

从你的笔记中,似乎行源的SQL语句会更容易:

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