WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL

**

WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL

Wincc作为西门子可视化系统,可以用于数据追溯功能。本文将讲述WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL。

  1. 查询SQL数据库,将数据显示到MSFlexGrid控件上

    打开数据库:

Con="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persis Security Info=False;Initial Catalog=Data;Data Source=.\WINCC"
Set conn=CreateObject("ADODB.Connection")
conn.ConnectionString=Con
conn.CursorLocation=3
conn.Open

接下来需要根据自己需求,编写SQL查询语句,涉及各种查询条件
执行SQL语句:

Set oRs=CreateObject("ADODB.Recordset")
Set oCom=CreateObject("ADODB.Command")
Set oCom.ActiveConnection=conn
oCom.CommandType=1
oCom.CommandText=sSql
Set oRs=oCom.Execute

其次将查询到的数据填写到MSFlexGrid控件上,表格的宽高可以通过脚本定义

MSFlexGrid1.TextMatrix(i,0)=oRs.Fields(0).value
MSFlexGrid1.TextMatrix(i,1)=oRs.Fields(1).value

WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL_第1张图片
2. 查询SQL数据库,将数据导出EXCEL
导出EXCEL与显示数据到MSFlexGrid控件上基本类似,也是先进行查询,唯一区别是需要设置EXCEL模板,填充对象为EXCEL。

打开EXCEL模板:
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Visible=False
objExcelApp.Workbooks.Open "D:\模板\record.xlsx"

其次将数据填充到EXCEL模板中:

objExcelApp.Cells(i,1).Value=oRs.Fields(0).value
objExcelApp.Cells(i,2).Value=oRs.Fields(1).value

最后将EXCEL另存为:

objExcelApp.DisplayAlerts=False
objExcelApp.activeworkbook.saveas excel_name
objExcelApp.Workbooks.Close
objExcelApp.Quit
Set objExcelApp=Nothing

WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL_第2张图片

在这里要感谢某卖家给与帮助:

https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111deblpZrxn&ft=t&id=619025043138

你可能感兴趣的:(WINCC7.3/7.4通过VBS脚本链接数据库查询数据库显示并导出EXCEL)