【发布时间】:2016-11-08 14:54:31
【问题描述】:
我一直在无休止地寻找解决方案,但根本无法弄清楚。任何帮助将不胜感激。
我目前有一些 Access VBA 代码,用于设置与 Excel 工作表中的范围的 DAO 记录集连接。 (我已避免将电子表格链接为链接表,因为我不确定您是否可以仅使用特定范围执行此操作,不幸的是,以任何方式编辑电子表格都不是一种选择)。
然后我需要将此数据复制到表中。我目前正在遍历每条记录并将其添加到新记录集中,如下所示:
Set rsTbl = CurrentDb.OpenRecordset("tblData")
dbpath = "S:\OPS\Agent Performance.xls"
Set db = OpenDatabase(dbpath, False, True, "Excel 8.0;HDR=Yes;")
Set rst = db.OpenRecordset("SELECT * FROM [AgentActivity$C7:AP1000]")
Do Until rst.EOF
rsTbl.AddNew
For Each fld In rst.Fields
rsTbl(fld.Name) = fld.Value
Next fld
rsTbl.Update
rst.MoveNext
Loop
这很好用,但我需要遍历每个工作簿中的很多记录,还需要遍历很多工作簿。我希望有一种方法可以将整个记录集转储到 tblData 中,而不必像现在这样循环。
有人知道更好的方法吗?
【问题讨论】: