回复:请教:EXCEL的宏用ADO控件如何访问WINCCV6.0的SQL非压缩归档变量.急!!!

林中白狼

  • 帖子

    12
  • 精华

    1
  • 被关注

    0

论坛等级:新手

注册时间:2004-12-14

普通 普通 如何晋级?

发布于 2006-05-02 16:06:15

0楼

我在论坛里找到了一些例子,但运行不成功,能帮分析一下吗?
另:TO万斑竹,您说的是在WINCC界面下访问SQL吧,在EXCEL下用ADO就不能访问SQL吗?

例子:wincc6 实时向excel传送数据 并保存以当天日期为名
第一段的触发周期是一天,作用是复制另存ExcelExample.xls,并改名为当天日期
注:循环触发周期已设置,为每天10:10:00,用全局脚本在VB编写动作。
第一段:

Option Explicit

Function action

Dim fso,myfile,daystr,dstr,fname

dstr = FormatDateTime(Date)

fname="d:\" + dstr + ".xls"

Set fso = CreateObject("s cripting.FileSystemObject")

Set MyFile = fso.GetFile("d:\ExcelExample.xls")

MyFile.Copy (fname)
End Function

第二段是往当天的excel文件里写数据的,触发周期根据个人情况,测试时可以定为10秒,就是每10秒写一次数据
第二段:

Option Explicit

Function action

Dim fso,myfilep,daystr,dstr,fname

Set fso = CreateObject("s cripting.FileSystemObject")

dstr = FormatDateTime(Date)

HMIRuntime.Tags("i").write fso.GetAbsolutePathName("")

fname=HMIRuntime.ActiveProject.Path++dstr+.xls

Dim ObjExcelApp

Set objExcelApp = CreateObject("Excel.Application")

objExCelApp.Visible = True

objExcelApp.Workbooks.Open fname

Dim i

i=1

Do While objExcelApp.worksheets ("sheet1").Cells(i, 1).VAlue<>""

i=i+1

Loop

objExcelApp.worksheets ("sheet1").Cells(i, 2).VAlue = HMIRuntime.Tags("I-COD").read

objExcelApp.worksheets ("sheet1").Cells(i, 3).VAlue = HMIRuntime.Tags("I-SS").read

objExcelApp.worksheets ("sheet1").Cells(i, 4).VAlue = HMIRuntime.Tags("I-PH").read

objExcelApp.worksheets ("sheet1").Cells(i, 5).VAlue = HMIRuntime.Tags("I-F").read

objExcelApp.worksheets ("sheet1").Cells(i, 6).VAlue = HMIRuntime.Tags("I-FI").read

objExcelApp.worksheets ("sheet1").Cells(i, 7).VAlue = HMIRuntime.Tags("O-COD").read

objExcelApp.worksheets ("sheet1").Cells(i, 8).VAlue = HMIRuntime.Tags("O-SS").read

objExcelApp.worksheets ("sheet1").Cells(i, 9).VAlue = HMIRuntime.Tags("O-NH4N").read

objExcelApp.worksheets ("sheet1").Cells(i, 10).VAlue = HMIRuntime.Tags("0-P").read

objExcelApp.worksheets ("sheet1").Cells(i, 11).VAlue = HMIRuntime.Tags("O-F").read

objExcelApp.worksheets ("sheet1").Cells(i, 12).VAlue = HMIRuntime.Tags("O-FI").read

objExcelApp.worksheets ("sheet1").Cells(i, 1).VAlue =Now

objExcelApp.ActiveWorkbook.Save

objExcelApp.Workbooks.ClosE

objExcelApp.QuiT

Set ObjEXceLapp = Nothing
End Function

以上程序以设触发周期,变量也改为自己工程用的变量,均无反应。
我的版本为WINCC6.0.3.0
盼高手指教!!!!!!!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32564条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。