腐女喜欢做的网站wordpress数据库文件
腐女喜欢做的网站,wordpress数据库文件,WordPress 扫码支付跳转,用服务器做网站需要购买域名吗1.VBA调用ADO执行SQL语句获取查询结果#xff0c;通过RecordSet.GetRows方法获取到的数组是行列转置后的数组。
2.如果通过application.transpose对RecordSet.GetRows方法获取到的数组再进行转置#xff0c;如果报错“运行时错误438#xff1a;对象不支持该属性或方法”通过RecordSet.GetRows方法获取到的数组是行列转置后的数组。
2.如果通过application.transpose对RecordSet.GetRows方法获取到的数组再进行转置如果报错“运行时错误438对象不支持该属性或方法”原因是数组里有null。
VBA内置transpose函数有三个限制一是数组值不能是null二是行数不能超过65536行三是数组中的每个元素不能超过255字符。否则不能转置。
3.解决问题很简单一是在执行sql查询语句的时候对相关字段增加类似 iif(isnull(字段),,字段)的处理二是将GetRows得到的数组把所有数组元素用isnull判断如果是null变成空字符串即可三是不用内置函数用自定义转置函数。如下
for each n in rs.getrows if isnull(n) then stop next n
网友提供的自定义转置函数 Private Function transpose(drr) Dim arr(), L1, U1, L2, U2 L1 LBound(drr): U1 UBound(drr) L2 LBound(drr, 2): U2 UBound(drr, 2) ReDim arr(L2 To U2, L1 To U1) For i L1 To U1 For j L2 To U2 arr(j, i) drr(i, j) Next Next transpose arr End Function
4.题外话。在执行了copyfromrecordset后数据库的指针当前已经处于记录尾端位置了。这时候getrows操作没有记录肯定出错。需要在语句前面加上一句rs.movefirst就可以了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/88096.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!