我正在更新 Excel 表ADODB记录集使用CopyFromRecordset
方法。
更新后,只要有数字列,数字就会显示为日期。
我到目前为止使用的解决方法是将列的格式设置回数字VBA,但这不是一个好的解决方案,因为报告需要更多时间才能完成。我还必须编写代码来容纳很多表。
有快速解决办法吗?任何帮助是极大的赞赏。
'Delete old data and copy the recordset to the table
Me.ListObjects(tblName).DataBodyRange.ClearContents
Me.Range(tblName).CopyFromRecordset rst
tblName
- 指保存与第一个数据相同格式/数据类型的数据的现有表
我知道这是一个迟到的答案,但我遇到了同样的错误。我想我已经找到了解决方法。
Excel 似乎希望该范围是左上角的单元格,而不是单元格范围。所以只需将你的语句修改为Range(tblName).Cells(1,1).CopyFromRecordset rst
'Delete old data and copy the recordset to the table
Me.ListObjects(tblName).DataBodyRange.ClearContents
Me.Range(tblName).Cells(1,1).CopyFromRecordset rst
似乎还要求目标工作表处于活动状态,因此您might必须首先确保工作表处于活动状态,然后更改回之前的活动工作表。这可能已在更高版本的 Excel 中得到修复。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)