访问:用记录集创建n条记录

Access: Create n records with recordset

我在 Access 中尝试使用 VBA 进行一些操作,但我看不出我做错了什么。

我在表单中有一个文本控件(数字),我可以在其中写一些数字。我想要的是当我点击表单中的按钮时,在另一个 table(不是表单的来源)中创建与文本控件中的数字一样多的记录。

我正在尝试这个,但它没有做任何事情:

Dim db As Database
Dim rst As Recordset

Set db = CurrentDb()
Set rst = db.OpenRecordset("Table")

If Not rst.EOF And rst.BOF Then
    Do While rst.RecordCount < Me.Txt_Control
        rst.Edit
            rst.Fields("Field_01") = "Example 1"
            rst.Fields("Field_02") = "Example 2"
            rst.Fields("Field_03") = "Example 3"
        rst.Update
        rst.MoveNext
    Loop
    rst.Close
End If

有人可以帮我吗?

此致。

您正在编辑一条现有记录,而不是添加新记录。此外,您的代码可能 运行 出现问题,因为您打开的记录集可能存在记录。

您可以使用以下内容:

Dim db As DAO.Database
Dim rst As DAO.Recordset

Set db = CurrentDb()
Set rst = db.OpenRecordset("SELECT * FROM Table WHERE 1=0") 'Open the table, but don't select anything
Do While rst.RecordCount < Me.Txt_Control
    rst.AddNew 'Add a new record
    rst.Fields("Field_01") = "Example 1"
    rst.Fields("Field_02") = "Example 2"
    rst.Fields("Field_03") = "Example 3"
    rst.Update
Loop
rst.Close