Vba 访问:使用记录集创建n个记录

Vba 访问:使用记录集创建n个记录,vba,ms-access,recordset,Vba,Ms Access,Recordset,我正在尝试在Access中使用VBA,但我看不出我做错了什么 我有一个文本控件(数字),我可以在其中写一些数字。我想要的是,当我点击表单中的一个按钮时,在另一个表(不是表单的源)中创建与文本控件中的数字一样多的记录 我正在尝试,但它没有任何作用: Dim db As Database Dim rst As Recordset Set db = CurrentDb() Set rst = db.OpenRecordset("Table") If Not rst.EOF And rst.BOF

我正在尝试在Access中使用VBA,但我看不出我做错了什么

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

我正在尝试,但它没有任何作用:

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作为数据库
将rst设置为记录集
Set db=CurrentDb()
Set rst=db.OpenRecordset(“表”)
如果不是rst.EOF和rst.BOF,则
rst.RecordCount
有人能帮我一下吗


注意。

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

您可以使用以下选项:

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
Dim db作为DAO.Database
将rst设置为DAO.Recordset
Set db=CurrentDb()
Set rst=db.OpenRecordset(“SELECT*FROM Table WHERE 1=0”)”打开表格,但不要选择任何内容
rst.RecordCount
您正在编辑一条现有记录,而不是添加新记录。此外,您的代码可能会遇到问题,因为您正在打开可能存在记录的记录集

您可以使用以下选项:

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
Dim db作为DAO.Database
将rst设置为DAO.Recordset
Set db=CurrentDb()
Set rst=db.OpenRecordset(“SELECT*FROM Table WHERE 1=0”)”打开表格,但不要选择任何内容
rst.RecordCount