找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
Dim objCommand
Dim objRecordset
Dim strConnectionString
Dim strSQL
Dim lngValue
Dim lngCount
Dim xlapp
Dim xlsheet
Dim xlbook
strConnectionString = "Provider=MSDASQL;DSN=test;DATABASE=linhe;UID=sa;PWD=linhe;"
strSQL = "select PF01AITATT0101 from lh where dt ='2009-06-26 8:53:00'"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.Open
Set objRecordset = CreateObject("ADODB.Recordset")
Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection
objCommand.CommandText = strSQL
Set objRecordset = objCommand.Execute
lngCount = objRecordset.Fields.Count
If (lngCount>0) Then
Dim xlspreadsheet
Set xlspreadsheet=ScreenItems("control")
xlspreadsheet.Range("a1:af65536").ClearContents
xlspreadsheet.Range("a65536").End(xlUp).Offset(1).CopyFromRecordset objCommand.Execute
'A列的最后一个有数据单元格向下偏移量为1行的单元格
'运行到这个地方时,脚本就运行不下去了
Else
HMIRuntime.Trace "Selection returned no fields" & vbNewLine
End If
Set objCommand = Nothing
objConnection.Close
Set objRecordset = Nothing
Set objConnection = Nothing
End Sub
我想问问论坛里的高手,不运行的那句脚本有点什么语法问题。
涉及到EXCEL的知识,我自己不熟悉,所以我想可能问题就出在这里。
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
根据我测试的结果EXCEL VBA/VISUAL BASIC对CopyFromRecordset 支持的还不错,但是在WinCC中却无法正常工作,提示:Class doesn't support Automation
代码中的一些错误:
在objConnection.Open之前加一句objConnection.CursorLocation=3,否则可能取不到数据
另外lngCount = objRecordset.Fields.Count应该改为lngCount = objRecordset.RecordCount
还有你的xlUP没有声明
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城