找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
sCon = sPro + sDsn + sSer’查询链接串
sSql= "TAG:R,'ProcessValueArchive\"&ScreenItems("控件8").ValUe&"','"&dt1&"','"&dt2&"'"
‘上面这一句是查询语句,从SQL for wincc数据库中查询,可以多项查询,详见课本
MsgBox "Open with:" & vbCr & sCon & vbCr & sSql & vbCr
‘下面是ADODB查询,需要用到上面的查询链接串,不需要修改
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = sCon
conn.CursorLocation = 3
conn.Open
Set oRs = CreateObject("ADODB.Recordset")
Set oCom = CreateObject("ADODB.Command")
oCom.CommandType = 1
Set oCom.ActiveConnection = conn
oCom.CommandText = sSql
Set oRs = oCom.Execute’oRS为查询得到的记录集
Set objexcelApp=CreateObject("excel.application")
objexcelApp.visible=True
objexcelapp.workbooks.open"d:\book.xls"
objExcelApp.Sheets(1).Range("a"&Trim(1)) =oRs.Fields(0).Name ‘以下五行是把字段名写到excel的第一行, ,oRS.Fields(0)为查询得到的记录集的第一个字段
objExcelApp.Sheets(1).Range("b"&Trim(1)) = oRs.Fields(1).Name
objExcelApp.Sheets(1).Range("c"&Trim(1)) = oRs.Fields(2).Name
objExcelApp.Sheets(1).Range("d"&Trim(1)) = oRs.Fields(3).Name
objExcelApp.Sheets(1).Range("e"&Trim(1)) = oRs.Fields(4).Name
For i=1 To oRs.RecordCount ‘做循环查询
objExcelApp.Sheets(1).Range("a"&Trim(i+1)) =oRs.Fields(0).value
objExcelApp.Sheets(1).Range("b"&Trim(i+1)) =DateAdd("H",8,oRs.Fields(1).value) ’格林时间
objExcelApp.Sheets(1).Range("c"&Trim(i+1)) = FormatNumber(oRs.Fields(2).value, 1)
objExcelApp.Sheets(1).Range("d"&Trim(i+1)) = FormatNumber(oRs.Fields(3).value, 1)
objExcelApp.Sheets(1).Range("e"&Trim(i+1)) = FormatNumber(oRs.Fields(4).value, 1)
oRs.MoveNext
Next
oRs.Close’一下为关闭excel,关闭连接等,释放资源
‘objexcelapp.activeworkbooks.save
‘objexcelapp.workbooks.close
‘objexcelapp.quit
Set objexcelapp=nothing
Set oRs = Nothing
conn.Close
Set conn = Nothing
查询单个已经实现了,我看书上查询多个的语句是这么写的TAG:R,('valname1';'valname2'),----
上面那一步照葫芦画瓢能实现,可是继续应该怎么写呢?得到记录集oRs
譬如这两个变量都有四个字段,那么第一个变量对应oRs.Fields(1) oRs.Fields(2)
oRs.Fields(3) oRs.Fields(4)
第二个变量
对应oRs.Fields(5) oRs.Fields(6)
oRs.Fields(7) oRs.Fields(8) 吗?
如果不是应该怎么写呢
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城