SQL数据另存EXCLE的问题?

我用用户归档做了个报表,但另存一直解决不了,以下是我的脚本,希望有高手可以指正我的错误;
 CZQ:用户归档的名
 riqiua:归档数据的域名
 yaxia1:归档数据的域名
 riqishuru:输入/输出域的变量
 gb-lmj:计算机名

 

 Sub OnbuttonDown(ByVal Item,Byval Flags,ByVal x,ByVal y)
 Dim riqishuru
 set riqishuru=HMIRuntime.Tags("riqishuru")
 Dim riqi
 Dim strcn,cn
 Dim rs
 Dim strSQL
 Dim comm

 strcn="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBNAME;Data Source=gh-lmj\wincc"
 set cn=CreateObject("ADODB.Connection")
 set rs=CreateObject("ADODB.Recordset")
 set comm=CreateObject("ADODB.command")
 cn.ConnectionString=strcn
 cn.cursorlocation=3
 cn.open
 comm.commandtype=1
 comm.activeconnection=cn

 riqi=CStr(year(now))&"-"&CStr(month(now))&"-"&CStr(day(now))

 Dim objexcelapp
 set objexcelapp=createobject("excel.application")
 With objexcelapp
 .visible=True
 .wordbooks.open("F:\source.xls")
 .activewordbook.activesheet.select
 .displayalerts=false
 end with

 riqishuru.read
 strSQL="select * from UA#czq where riqiua like '"&riqishuru&"'"
 comm.commandtext=strSQL
 set rs=comm.execute

 if Not rs.eof then
 rs.movefirst
 objexcelapp.wordsheets(1).cell(5,3).value=rs("yaxia1")
 end if

 objexcelapp.activewordbook.save
 objexcelapp.activewordbook.close
 objexcelapp.quit
 set objexcelapp=Nothing
 rs.close
 cn.close
 set rs=Nothing
 set cmm=Nothing
 set cn=Nothing

 end sub

 以上是我在WINCC的脚本,我觉得好像SQL连接那里出了问题,真正的原因还不知道,strcn="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBNAME;Data Source=gh-lmj\wincc"
 在这一段不知道有没有问题,我是照抄别人的脚本的,那个catalog这里是不是应该用SQL里面那个长长后面的名字???我试过也还不行。
 希望各位高手可以看看指出错误,最好把错误的改正的贴一贴出来
 如果有现成的例子可否发我一份?我不想用什么DDE,DAT@MONITOR什么的。
 不胜感激!!!!

最佳答案

Initial Catalog就是你要访问的那个数据库的名字。
 人家原本写的DBNAME的英文就是“数据库名字”的意思
 每个项目都不一样。
 建议调用系统变量dsnnamert来做
 

提问者对于答案的评价:
这个我知道,不过还是谢谢大家,错在SQL的查询语句和RS的取数据的方式那里,我今天已经搞定了。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc273414.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐