admin 管理员组

文章数量: 1086019


2024年4月30日发(作者:tomcat书籍)

用VBS实现WINCC的用户归档输出到EXCEL表格的方

法和例

(2009-12-30 16:47:45)

用VBS实现WINCC的用户归档输出到EXCEL表格的方法和例子程序

求用VBS实现WINCC的用户归档输出到固定格式的EXCEL表格的方法和例子程

序!我主要问题在SQL数据库的查询语句不会。

看见论坛里有关用VBS实现EXCEL的数据查询和导出,我现在想要完成如下功能:

每分钟将数据归档,用户可以输入任意的时刻时间查询从任意时刻开始的之后每

隔1小时的数据(有点像日报里的24个小时)。我现在对于VBS查询数据库的

语句不懂,望大大赐教!谢谢

''SQL查询语句

Dim strc as string

strc = "provider=WinCCOLEDBProvider.1;catalog=CC_RebdI_09_06_22_10_3

8_35R;data source=ComputerNameWinCC"

''这个连接字符串可以在SQl2000中看到

Dim cc1

Set cc1=CreateObject("tion")

tionString=strc

Location=3

Dim rst As Object

Set rst = CreateObject("set")

dim ssql as string

ssql = "Tag:R,'Archive_3DB1DBD0','2009-7-29 00:00:00.0000','200

9-7-29 23:59:59.999','timestep=3600,258'"

''Archive_3I_DB1DBD0归档和变量

''2009-7-29 00:00:00.0000,2009-7-29 23:59:59.999时间段

''timestep=3600,258每阁多少秒拿一个数据(3600=1小时),258

表示每个时间段取最后一个数据

ssql, cc1

''这样查出来的数据就是一天的每小时的数据

''对rst记录集处理就可以得到你要的数据

==========================

Function action

Dim objExcelApp

Dim i,TimeM,TimeNow,TimeS

Set TimeM=("TimeM")

i=1+

TimeNow=CStr(Year(Now))&"年"&CStr(Month(Now))&"月"&CStr(Day(Now))&"日

"&CStr(Hour(Now))&"-"&CStr(Minute(Now))&":"&CStr(Second(Now))

TimeS=Second(Now)

Set objExcelApp = CreateObject("ation")

e = False

"E:"

(i, 2).Value =123.47

(i, 1).Value = TimeNow

yAlerts = False

Set objExcelApp =Nothing

End Function

以上代码用于往指定的Excel表格中写数据。该动作每分钟触发一次,依次往表

格中写入60个数据,当进入下一个小时后,大概是因为表格中已存在数据所以

在写入前会弹出对话框提醒是否覆盖还是另存,加入

yAlerts = False语句后就不存在这个问题了,对此要谢谢

谢谢版主:城外之人。

WINCC与EXCEL数据交换 hjyhjy,2010-11-09 16:55:28

WINCC与EXCEL数据交换

代码

Sub X6309X94AE13X0000X0000_OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)

Dim objExcelApp


本文标签: 数据 归档 表格