关于用VBS和EXCEL做实时报表数据问题

我用下面的脚本做的实时数据到EXCEL.但是一点反应都没有,连另存的D盘EXCEL目录都没有生成!希望大侠们能帮我看看问题出在哪里!谢谢!
'定义变量             

Dim objExcelApp, objExcelbook,objExcelSheet

Dim tagshijian,sheetname,username,zhushi
Dim tagday
Dim tag1gongyeshui, tag2shenghuoshui,tag3tuoyanshui, tag4zhengqi,tag5h2so4, tag6hno3,tag7hf,tag8zaishengsuan,tag9naoh
Dim i,j
Dim msg


' 声明
Set tag1gongyeshui=HMIRuntime.Tags("TE_0102")
Set tag2shenghuoshui=HMIRuntime.Tags("TE_0106")
Set tag3tuoyanshui=HMIRuntime.Tags("LT_0101")
Set tag4zhengqi=HMIRuntime.Tags("PT_0102")
Set tag5h2so4=HMIRuntime.Tags("TE_0105")
Set tag6hno3=HMIRuntime.Tags("LT_0103")
Set tag7hf=HMIRuntime.Tags("PT_0302")
Set tag8zaishengsuan=HMIRuntime.Tags("PT_0304")
Set tag9naoh=HMIRuntime.Tags("PT_0306")

msg="ok"
sheetname="sheet1"

'创建对象
 Set objExcelApp=CreateObject("Excel.Application") 
 
 objExcelApp.visible=True
 objExcelApp.workbooks.open"e:\wincc_1118_120311\ribaobiao\日报表.xls"
 objExcelApp.worksheets(sheetname).activate
 '清除模版数据
 With objExcelApp.worksheets(sheetname)
 For i=4 To 27
  For j=1 To 10
  .cells(i,j)=Null
  Next
 Next
End With
'实时数据写入
 tagshijian=Now
objExcelApp.Worksheets(sheetname).cells(1,9).value=tagshijian
For i=4 To 27
With objExcelApp.worksheets(sheetname)
  .cells(i,1).value=tagshijian
  tag1gongyeshui.read
  .cells(i,2).value=tag1gongyeshui.value
  tag2shenghuoshui.read
  .cells(i,3).value=tag2shenghuoshui.value
  tag3tuoyanshui.read
  .cells(i,4).value=tag3tuoyanshui.value
  tag4zhengqi.read
  .cells(i,5).value=tag4zhengqi.value
  tag5h2so4.read
  .cells(i,6).value=tag5h2so4.value
  tag6hno3.read
  .cells(i,7).value=tag6hno3.value
  tag7hf.read
  .cells(i,8).value=tag7hf.value
  tag8zaishengsuan.read
  .cells(i,9).value=tag8zaishengsuan.value
  tag9naoh.read
  .cells(i,10).value=tag9naoh.value
  End With
  Next
MsgBox msg

'关闭保存
Dim patch,filename
 filename= CStr(Year(Now))&CStr(Month(Now))&CStr(Day(Now))
 patch="d:\baobiao\"&filename&"DEMO.xls"
objExcelApp.activeworkbook.saveAs patch
objExcelApp.workbooks.close
objExcelApp.Quit
Set objExcelApp=Nothing
一直没查到问题在哪,如果这样能实现实时报表,那么该怎么实现日报表呢?这个问题额外加分!感激不尽!

问题补充:
日报表只要24小时每小时采集一次数据,然后每天自动保存到EXCEL就可以了!

最佳答案

我把你的程序给你简单的优化了一下,你试一试吧
''定义变量             
Dim objExcelApp, objExcelbook
Dim tag1''这个在内部变量里建立,是行数变量,初始值设定为4
Set tag1=HMIRuntime.Tags("tag1")
tag1.Read

''创建对象
 Set objExcelApp=CreateObject("Excel.Application") 
 objExcelApp.visible=True
 objExcelApp.workbooks.open"E:\wincc_1118_120311/ribaobiao/日报表.xls"   ''这个路径里的文件名字用英文的,不要用中文的

''实时数据写入 
objExcelApp.Worksheets.cells(1,9).value=Day(Now)
objExcelApp.cells(tag1,1).valuE=HMIRuntime.Tags("TE_0102").Read
tag1.Value=tag1.Read+1

If tag1.Value>27 Then
tag1.Write4

''另存为
objExcelApp.activeworkbook.saveAs "E:/CStr(Year(Now))&CStr(Month(Now))&CStr(Day(Now))"
objExcelApp.Quit
Set objExcelApp=Nothing

Else
''直接保存
objExcelApp.ActiveWorkbook.Save
objExcelApp.Quit
Set objExcelApp=Nothing
End If
这个是实时数据,当写满27行后自动另存为,记得设定触发器的,日报表什么要求?

提问者对于答案的评价:
谢谢啦!~我还有个日报表的问题,记得帮我答一下哦

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

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

相关推荐

  • wincc 归档多个数据 公用一个时间列 列表显示多行

    大家有这样用的吗 该调哪里 直接附图 问题补充:不好意思图穿不上来。现在是这么个情况,非周期上升沿触发归档,同时触发5个变量归档,控件里5个数据咧公用一个时间咧…

    SIMATIC WinCC 2020年11月1日
  • WINCC数据类型

    在PCS的WINCC报警记录中,发现相当一部分报警记录连接的一个RawEvent的变量,其中这个变量是原始数据类型,不明白为什么报警记录不直接连接相关变量而要选择连接这个,原始数据…

    SIMATIC WinCC 2019年6月11日
  • 变量类型中8位变量文本类型和16位变量文本类型有什么区别?

    变量类型中8位变量文本类型和16位变量文本类型有什么区别? 最佳答案 对于内部变量来说,使用起来没有任何区别,都可以显示中文; 其主要区别在于其存储格式,8位文本型使用的…

    SIMATIC WinCC 2019年6月11日
  • s7315-2dp 能通过编程电缆与WINCC通讯吗

    s7300与wincc通讯 最佳答案 可以,即可以通过MPI口,也可以通过 DP 口连接WinCC V7.4连接S7-300/400的常用方式http…

    SIMATIC WinCC 2020年11月1日
  • 关于wincc和sql交换数据

    查了一下午资料 这是我写的VBS程序 用来写数据到SQL数据库 程序还是不能正常运行 到cn.open语句时停止 请各位高手指点一…

    SIMATIC WinCC 2019年6月11日
  • 触摸屏与电脑通信

      smart 700 ie v3 触摸屏与笔记本电脑通信除了用以太网还有其他通信方式吗? 问题补充:用usb怎么通信,…

    SIMATIC WinCC 2021年7月5日
  • 大侠给看看错在哪里了?wincc excel

    按照资料上的例子,做了这样一个程序,添加的for和if语句后,不能执行,而且excel打开了,关闭不了。目的是打开excel后,先判断将要写入的位置是否为空,如果为空,则将i\o域…

    2019年6月11日
  • wincc登录对话框不能跳出

    今天从车间一台电脑上拷了一份程序,在我的电脑上运行,运行程序进度条走到100%,但是在进入第一个调用页面时,不弹出登录对话框(不填写用户名和密码,程序不能运行)。经检查,所有设置都…

    SIMATIC WinCC 2019年6月11日
  • 用户归档的数据库

    我想做一个报表,思路如下:利用一个VBS动作使用户归档的ID和JOB分别为-1,6即读取变量值到用户归档中,这样我可以把用户归档作为一个数据库来查询,这样思路可以吗?但是用户归档数…

    SIMATIC WinCC 2019年6月11日
  • S7-300与WinCC通讯,CP5611卡,用MPI或PROFIBUS,

    S7-300与WinCC通讯,CP5611卡,用MPI或PROFIBUS,哪一个好用?具体怎样连接。我是个新手,请多指教。 问题补充:能告诉我怎样联吗,详细说说步骤,谢谢&nbsp…

    SIMATIC WinCC 2019年6月11日