incc 7.0 生成excel报表vbs脚本追加excel数据记录问题

On Error Resume Next
Dim xlApp,xlBook,oExcelFile
oExcelFile = "D:\日报表模板.xlsx"   '全部代码只需改变文件的路径就可以,其他不用作任何改动
Dim isXlsOpen
isXlsOpen = False
Set xlApp = GetObject(,"Excel.Application") '获取EXCEL进程
If TypeName(xlApp) <> "Application" Then '检测到有Excel进程已经打开
 Set xlApp = CreateObject("Excel.Application")
End If
xlBookFind= False
For Each oBook In xlApp.WorkBooks '循环检查Excel进程打开的Workbooks
 'MsgBox xlBook.FullName
 If oBook.FullName = oExcelFile Then '如果路径与所检查的文件一致
  Set xlBook = oBook
  xlBookFind = True
  Exit For
 End If
Next
If xlBookFind=False Then '#如果没有找到
xlApp.Visible=True'要打开的文件是否显示或是在后台运行
 Set xlBook = xlApp.Workbooks.Open(oExcelFile)
 xlApp.worksheets(sheetname).activate
End If

Dim tag5h2so4,tagshijian,sheetname
 sheetname="sheet1"
 Set tag5h2so4=HMIRuntime.Tags("Minute")
 tagshijian=Now
 tag5h2so4.read
 xlApp.Worksheets(sheetname).cells(tag5h2so4.value+4,1).value=tagshijian

以上脚本每一分钟触发一次,模板表格打开后,从第二条记录开始总是有重新打开模板表格,而不是在已经存在的表格里继续往下添加,我试着改了,但没有改好。。。高手帮忙看看是什么原因啊

最佳答案

If TypeName(xlApp) <> "Application" Then ''检测到有Excel进程已经打开
这句有问题,应该是检测Excel.Application吧!
我没有按照你这样的做法做过,我一般是添加一次记录后就保存文件,然后下载检测保存的路径下是否有该文件,如果没有,则打开模板,否则就打开该文件插入新的记录。

提问者对于答案的评价:
大侠,能不能把你的实例发我一份,按你所说的思路,每次都检测是否已经有文件存在,有的话,打开文件添加记录,没有的话打开模板添加。。。我文件是按当前日期存放的。。。请大侠帮帮忙吧  邮箱315485815

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 下午3:16
下一篇 2018年12月2日 下午3:17

相关推荐

  • WINCC再问

    1,在NET的通道中或PG/PC接口中CP_L2_1和S7ONLINE各用在什么场合?,具体什么意思?,它门的作用是什么? 期待高手的指点 问题补充:主要想知道CP_L2…

    SIMATIC WinCC 2019年6月11日
  • wincc装好以后管道流动不正常,管道插件已安装

    wincc装好以后管道流动不正常,管道插件已安装 问题补充:我这个程序是没问题的,在别的电脑上显示很正常,这个是在新装系统,新装的step7和wincc,这里显示不正常,怀疑是不是…

    2021年7月5日
  • wincc flexible smart如何转换数值

    有一个转速值,单位为r/min,从hmi输入,需要输入到plc,但是要转换为度/s,这个在wincc flexible smart中如何做?别的触摸屏貌似可以做…

    SIMATIC WinCC 2020年11月1日
  • wincc历史曲线显示不出来?

    我用的是winncc6.0,监控画面其它都正常,就是归档的历史趋势图显示不出来,而在线实时曲线可以显示出来.不知为什么?请各位高手帮忙! 最佳答案 是由于WinCC项目的过程值归档…

    SIMATIC WinCC 2019年6月11日
  • 关于WinCC7.3 C/S架构下 客户端Horn报警声音的问题

    项目的配置为WinCC Server 两台冗余, Client 一台,使用Horn组态报警声音,其中在两台Server上都可以发出报警声音,…

    SIMATIC WinCC 2017年6月7日
  • 不知道从什么开始,启动Wincc就会在这里卡一下

    有知道怎么回事的吗?重启电脑,复位Wincc也不行 问题补充:没有*.loc  *.tmp   *lck  &…

    2021年7月5日
  • Winvv6.0的 VBS脚本

    wincc6.0 里这么用VBS脚本实现修改文件名为当前日期??? 最佳答案 vbs脚本中有打开文件的方法,当用覆盖的方式打开一个文件时,利用VBS的取当前时间的方法,将…

    SIMATIC WinCC 2019年6月11日
  • wincc改变颜色

    我怎样写C脚本来实现一个圆的颜色的变化。用什么函数? 问题补充:我是用三个变量的不同组合对应不同的颜色 最佳答案 可以根据某个TAG的变化触发。 如果TAG较多的话,也可…

    SIMATIC WinCC 2019年6月11日
  • WINC如何设定PLC的时钟

    WINC如何设定PLC的时钟,如设定年,月,日,时,分,秒,星期。WINCC建变量的类型是什么?如何显示年,月,日,时,分,秒,星期。我知道在step7中用SFC0.SFC1读写时…

    SIMATIC WinCC 2019年6月11日
  • 软件安装先后顺序

    STEP7 V56 SP2,WINCC7.5SP1,SMATIC NET V16,这三个安装顺序 最佳答案 1.STEP7 V56…

    SIMATIC WinCC 2021年7月5日