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

相关推荐

  • 历史趋势图

    在WINNCC做历史趋势图时,已在变量记录中进行归档组态,但在运行趋势图时,显示"没有到数据服务器的连接",不知是如何解决,请高人给指点,谢射! 最佳答案 项目…

    SIMATIC WinCC 2019年6月11日
  • wincc7.4sp1开机自启动问题

    如题,在wincc自带的开机自启动软件中设置项目路径,保存好路径后再打开开机自启动软件,发现路径变了。就是改不了项目路径!之前7.3版本的自启动软件和这个7.4的不一样。不知道这个…

    SIMATIC WinCC 2021年7月5日
  • 请问触摸屏怎么和S120通讯啊,DP型的。

    请问触摸屏怎么和S120通讯我只知道PN型的配置变量表,关联变量的具体步骤。。。DP型的怎么做啊 最佳答案 可以参考一下下面的文档西门子新一代精智屏及基本屏与S120 的…

    SIMATIC WinCC 2021年7月5日
  • WinCC的历史趋势哪去了?

    我安装的是WinCC V6.2。因为原先电脑重启,使得SQL2005里的WinCC数据库服务无法启动,再卸载并重新安装了SQL2005后,再运行原先的WinCC项目后,原…

    SIMATIC WinCC 2019年6月11日
  • wincc画面批量大小调整

    我有一个WinccV6.2项目,原来的画面是15寸的显示器,现在要换成19寸的显示器,由于画面比较多,大概有700幅,每幅画面里的内容很多,想请问有没有好的方法来调整画面大小呢,比…

    SIMATIC WinCC 2019年6月11日
  • wincc项目管理器问题

    在编辑图形时,右键图形属性,在控件属性下,字体变成了乱码,其他项正常,比如几何项,其它项都正常,就唯独控件属性的字全乱了。我用的是中文WINCC6.0。急急急… 问题补充:我现…

    SIMATIC WinCC 2019年6月11日
  • 请问symbol library控件怎么做授权?

    标准对象都能在“其它-授权”设置权限,为什么symbol library控件symbol library控件不能?有什么办法吗?谢谢! 图片说明:  …

    2021年7月5日
  • WinCC 能与LOGO!通信吗 怎么实现

    RTRTRTRT 问题补充:我的问题很弱智吗   没人回答啊  我们老师说让WinCC和LOGO通信 他估计没做过&nb…

    SIMATIC WinCC 2019年6月11日
  • wiincc的脚本相关的手册 VB C

    谁有分享一下呗脚本写的根本看不懂 有没有比较全的资料呢 最佳答案 WinCC V7.4 Scripting: VBS, ANSI-…

    SIMATIC WinCC 2021年7月5日
  • WINCC FLEXIBLE按钮延迟

    为了避免不小心按到, 我想设定的按钮是按住0.5秒才触发的, 请问具体应该怎么做, 谢谢大家 最佳答案 你的想法是好的,但是按常规做法根本是行不通的换…

    SIMATIC WinCC 2017年11月26日