VBA Range.CopyFromRecordset 到 Listobject:只打印第一行

问题描述 投票:0回答:0

我正在尝试从数据库中提取大量数据,对其进行过滤,将其提取到 Excel 工作簿,并对其进行格式化以便分发。

我将数据作为字符串存储在 DAO.Recordset 中。格式化涉及 Excel.ListObjects、更新数据类型和分组列。因为格式化需要多次调用 Excel,所以需要一点时间。

我想通过为每个分布重复使用相同的工作簿、SavingAs、删除/清除旧数据和插入新数据来减少运行宏所需的时间。

使用 Range.CopyFromRecordset 将数据拉到第一个电子表格,然后毫无问题地格式化和分发。

问题似乎出在删除/清除以前的一组数据并插入新的数据。我已经尝试了很多方法,包括从 DataBodyRange 中删除或清除内容以及调整/插入或删除行等,但它们都没有完全起作用。到目前为止,我能做的最好的事情就是打印一行新数据。

是否可以将 CopyFromRecordset 与现有的 ListObject 一起使用;如果是这样,那将如何完成?

vba ms-access dao
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.