如何在wincc调用excel中的宏

rt

最佳答案

C脚本:
 void Excel() 
 { 
 __object* pExcel = NULL; 
 __object* pWorkbooks = NULL; 
 __object* pActiveWorkbook = NULL; 

 pExcel = __object_create("Excel.Application.8");   //8 for Excel 97 
 //    pExcel = __object_create("Excel.Application.9");  // 9 for Excel 2k
 //    pExcel = __object_create("Excel.Application.10");  //10 for Excel XP 
 //    pExcel = __object_create("Excel.Application.11");  //11 for Excel 2k3 

 if(pExcel) { 
 pExcel->Visible = 1; 
 pWorkbooks = pExcel->Workbooks; 
 pWorkbooks ->Open ("F:\\WinCCProjects\\Excel_TST.xls");

 pExcel->Run("TestMacro");

 pActiveWorkbook = pExcel->ActiveWorkbook;
 pActiveWorkbook->Save();
 __object_delete(pActiveWorkbook); 

 pWorkbooks->Close();
 __object_delete(pWorkbooks); 

 pExcel->Quit();
 __object_delete(pExcel); 
 } 
 }

 VBS脚本:
 Dim xExcel,xWorkbooks,xActiveWorkbook

 Set xExcel = CreateObject("Excel.Application")

 if xExcel then 
 xExcel.Visible = True
 Set xWorkbooks = xExcel.Workbooks.Open("F:\WinCCProjects\Excel_TST.xls")
 xExcel.Run "Sheet1.TestFunc"

 xActiveWorkbook = xExcel.ActiveWorkbook
 xActiveWorkbook.Save
 set xActiveWorkbook = Nothing

 xWorkbooks.Close
 set xWorkbooks = Nothing

 xExcel.Quit
 set xExcel = Nothing

 end_if

提问者对于答案的评价:
大家都答得很好,可没办法,只能挑一个,那我就随便选一个吧。
 谢谢大家!!!中秋快乐!!

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

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

相关推荐

  • WINCC输入输出域数据

    WINCC取消激活后为什么输入输出域数据有时候能够保持上次的结果,有时候不能保持为零。。。 最佳答案 WinCC没有自带存储值功能。如果没有赋处值的话再次激活后就是NULL。我的办…

    SIMATIC WinCC 2019年6月11日
  • wincc图形翻转和编组问题

    为说什么wincc 图库里面的图形有的能翻转有的不能翻转,有的能编组有的不能编组。不能翻转编组的。能不能通过其他方法来做到 谢谢! 最佳答案 已经有相关的问题,…

    SIMATIC WinCC 2021年7月5日
  • 打开软件后报错

    成功安装了“SIMATIC WinCC flexible 2008”软件,双击打开报出图中错误 问题补充:不是注册表的问题,也不是与系统不兼容,我试过…

    2021年7月5日
  • 看懂C脚本应具备什么样的基础

    小弟想学习WINCC ,可小弟不会C语言,更看不懂C语言了。我想问的是WINCC中的C脚本语言和单片机编程的C语言一样么?如果会单片机的C语言,那么依靠单片机的C语言能看…

    SIMATIC WinCC 2019年6月11日
  • 报警记录设置

    报警记录消息类别中错误和系统,需要确认。有什么区别,右键中属性详细说明。 问题补充:能设置消息列表同一个报警多次出现,全部显示吗? 最佳答案 能设置消息列表同一个报警多次出现,全部…

    SIMATIC WinCC 2018年12月5日
  • 重装WINCC后对SQL 2005做哪些设置

    大家好:我现在用的一台机因出错重装了系统,(WINXP/SP2 SMIATIC NET V6.2\SQL 2005\WIN CC&…

    SIMATIC WinCC 2019年6月11日
  • protool按钮的操作

    用PROTOOL编辑一个正方形按钮,按钮触发一个动作,但按钮上放置了一个比它略小的正方形(它要随一个变量改变颜色),结果导入触摸屏后,只有按到按钮边上时才能触发动作,有什么设置可以…

    SIMATIC WinCC 2019年6月11日
  • wincc脚本编译卡死,画面退出到75%进程就不在走了,急求老师给解决,谢谢

    请方便看下我的下面的问题图片,谢谢! 图片说明:    最佳答案 编译系统坏了,你用 reset_wincc.vbs退出,然后修复安装WINCC&nb…

    2017年11月1日
  • 数据桥授权

    我安装的数据桥(industrial data bridge)版本号为6.0SP1,有一个授权为WinCC Ind.DataBridge(512)&n…

    SIMATIC WinCC 2019年6月11日
  • 打开项目的应用受到限制

    详情请看图片 图片说明:    最佳答案 项目里面有触摸屏高级版的需要安装WINCC ADVACED V13 SP1版本还需要UP…

    2017年5月31日