在VBA中对断开连接的ADODB记录集应用筛选器



我有一个断开连接的记录集,可以通过方法"CopyFromRecordset">
但在此之前,我需要根据Filter属性在记录集上设置Filter:

Rst.Filter = "UnitPrice >100" 
Rst.MoveFirst 
Sheet1.Range("A2").CopyFromRecordset Rst    

该代码在"0"处引发某种自动化错误的运行时错误;Rst.Filter…";行
是不是我做错了什么?!或者简单地说,我们不能对断开连接的记录集应用筛选器??!

经过大量的测试和搜索,我可以找到问题的根源
这是由于在创建记录集时定义了记录集所属字段的数据类型,为了方便起见,这些字段的类型都是adVariant=12
似乎不再完全支持此数据类型,对于筛选记录集,必须在创建时精确定义字段的所有数据类型,并在筛选字符串中正确使用。请参阅下面的链接:https://learn.microsoft.com/en-us/sql/ado/reference/ado-api/datatypeenum?view=sql-服务器-ver15

最新更新