excel报表不写数据,谢谢!

目的:想在每天的14:50:00清除数据(先提前打开报表,清除一下数据),然后在15:00,16:00,17:00分别往表格里写数据(触发周期为:30分钟)。当在17:00写完数据后,以当天的日期为名称另存一份。运行后并不往表格里写数据,请帮忙分析一下程序,谢谢!
Option Explicit
Function action
Dim objExcelApp,objExcelBook,objExcelSheet 


On Error Resume Next 
Dim ExcelApp,ExcelBook 
Set ExcelApp=GetObject(,"Excel.Application") 
If TypeName(ExcelApp)="Application" Then 
 For Each ExcelBook In ExcelApp.WorkBooks 
  If ExcelBook.FullName="E:\temp\ee\biao.xls" Then 
    ExcelApp.ActiveWorkbook.Save 
    ExcelApp.Workbooks.Close 
    ExcelApp.Quit 
    Set ExcelApp=Nothing
    Exit For 
  End If 
 Next 
End If 

Set objExcelApp=CreateObject("Excel.Application") 
If Hour(Now)=14 And Minute(Now)=50 And Second(Now)=0 Then
 objExcelApp.Visible=True 
 objExcelApp.Workbooks.Open"E:\temp\ee\biao.xls" 
 objExcelApp.Cells(5,1).Value=Null 
 objExcelApp.Cells(5,2).Value=Null 
 objExcelApp.Cells(5,3).Value=Null 
 objExcelApp.Cells(6,1).Value=Null 
 objExcelApp.Cells(6,2).Value=Null 
 objExcelApp.Cells(6,3).Value=Null 
 objExcelApp.Cells(7,1).Value=Null 
 objExcelApp.Cells(7,2).Value=Null 
 objExcelApp.Cells(7,3).Value=Null 
 objExcelApp.Workbooks.Close 
 objExcelApp.Quit 
 Set objExcelApp=Nothing 
End If

If Hour(Now)=15 And Minute(Now)=0 And Second(Now)=0 Then
    objExcelApp.Visible=True 
    objExcelApp.Workbooks.Open"E:\temp\ee\biao.xls" 
    objExcelApp.Cells(5,1).Value = Now
    objExcelApp.Cells(5,2).Value=HMIRuntime.Tags("aa2").read
    objExcelApp.Cells(5,3).value=HMIRuntime.Tags("aa3").read 
    objExcelApp.ActiveWorkbook.Save 
    objExcelApp.Workbooks.Close 
    objExcelApp.Quit 
    Set objExcelApp=Nothing  
   'MsgBox "10"
  Else If Hour(Now)=16 And Minute(Now)=00 And Second(Now)=0 Then
    objExcelApp.Visible=True 
    objExcelApp.Workbooks.Open"E:\temp\ee\biao.xls"   
    objExcelApp.Cells(6,1).Value = Now 
    objExcelApp.Cells(6,2).Value=HMIRuntime.Tags("aa2").read
    objExcelApp.Cells(6,3).value=HMIRuntime.Tags("aa3").read 
    objExcelApp.ActiveWorkbook.Save 
    objExcelApp.Workbooks.Close 
    objExcelApp.Quit 
    Set objExcelApp=Nothing  

   ' MsgBox "11"   

   Else If Hour(Now)=17 And Minute(Now)=00 And Second(Now)=0 Then

    Dim patch,filename 
    filename=CStr(Month(Now))&CStr(Day(Now))+CStr(Hour(Now))&CStr(Minute(Now)) 
    patch="E:\temp\ee\"&filename&".xls" 
    objExcelApp.Visible=True 
    objExcelApp.Workbooks.Open"E:\temp\ee\biao.xls" 
    objExcelApp.Cells(7,1).Value = Now 
    objExcelApp.Cells(7,2).Value=HMIRuntime.Tags("aa2").read
    objExcelApp.Cells(7,3).value=HMIRuntime.Tags("aa3").read  
    objExcelApp.ActiveWorkbook.SaveAs patch
    objExcelApp.Workbooks.Close 
    objExcelApp.Quit 
    Set objExcelApp=Nothing 

    Else MsgBox "aa"

   End If
  End If 

End If 
End Function

最佳答案

如果你触发器设置30分钟触发一次,意味着打开项目之后,每隔30分钟运行一次这段脚本。
你通过什么保证触发它的时刻正赶上14:50  15:00,16:00,17:00呢?
如果赶不上,那你这段脚本的if里的语句一个也没执行,那怎么会有数呢?

建议你把if里执行的语句写成按钮的vbs脚本,点击按钮测试可以实现写数据的功能,再放回来。
触发器应是三个,就是每天这三个时间。
点击全局脚本编辑器的界面上边触发器的图标,触发器->定时器->周期性 点添加, 然后事件不选标准周期,选下拉列表里的每日的,下边填好时间即可。
用同样方法把每天的这三个时刻都设为触发器,就可以实现你的功能。

提问者对于答案的评价:
谢谢,我再试试.

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

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

相关推荐

  • 如何使用listview实现打印功能

    问题如题。能不能给个代码提示 问题补充:ScreenItems 是干什么的函数? 最佳答案 Set objcombox1=ScreenItems("c…

    SIMATIC WinCC 2019年6月11日
  • RedundancyControl错误

    公司有台服务器经常死机,就算不开winCC,系统也会出现死机问题,表现为只有鼠标能动,键盘所有按键都没有反应,鼠标点任何地方也都没反应。看系统的日志,发现有两个Redundancy…

    2021年7月5日
  • step7变量导入到wincc6.2

    我的step变量都定义好了 我用wincc要重新定义, 有没好的实用的方法?网上搜了不少 感觉就是太乱了 谢谢那位高手指点 最佳答案 相关资…

    SIMATIC WinCC 2019年6月11日
  • wincc v6.2静态文字问题

    今天安装了AUTOCAD后,发现图形编辑器中静态文本没有横向的汉字了,只有纵向的,我想问一下,怎么解决这个问题? 最佳答案 对象—属性—字体—文本方向—水平 提问者…

    SIMATIC WinCC 2019年6月10日
  • wincd c脚本的应用

    我在用GETBASEPICTURE函数来取得图片名称用于显示。但我不知来如何定义变量,返回值用哪个命令或函数例如:     &nb…

    SIMATIC WinCC 2019年6月11日
  • 为什么文字丢失

    将WINCC从一台计算机到另一台使用时,为什么文字丢失,都变成问号,而且运行时却又出来显示了 最佳答案 运行语言和组态语言不一致所致。 可通过“画面编辑器>>…

    SIMATIC WinCC 2019年6月11日
  • WINCC7.0 无法装载文件prtexpl.dll

    我安装的WinCC 7.0中文版西门子上位机组态软件,前段时间一直正常使用编程组态和监控,可是最近打开编程组态SIMATIC WinCC Explor…

    2017年10月24日
  • HMI下载程序时出错

    HMI下载程序时提醒HMI加载期间出错,让联系西门子客户支持,有没有知道这个的大神 问题补充:显示硬件编译-软件编译-下载软件,点击全部覆盖,装载按钮也无法使用;使用了好几天都没有…

    2020年11月1日
  • wincc的变量选择对话框没有数据源没有变量显示!

    每次选择变量,打开变量对话框就是一片空白,如图所示,求问怎么解决?谢谢了。 图片说明:    最佳答案 新建项目还这样得考虑修复软件甚至重装了。 提问者对于答案…

    2017年8月26日
  • wincc项目打不开也不能新建

    无论是打开还是新建。都会提示cannot open/create wincc project ,project manager&n…

    SIMATIC WinCC 2021年7月5日