看了一段高人写得C脚本报表代码,有问题请教

#include "apdefap.h"

int gscAction( void )
{
#pragma code ()
char FileName[20] = " ";

__object* pExcel = NULL; 
if((GetTagBit("xinhao")==1))
{
pExcel = __object_create("Excel.Application.9"); //9表示用的是office 2000
pExcel->Visible =1;
pExcel->Workbooks ->Open ("d:\\book1.xls");//Cells(row,col)

pExcel->Worksheets("sheet1")->Range("A1")->Value=GetTagWord("miao");  //写wincc的变量实时值到格A1中

}
pExcel->ActiveWorkbook->Save;
pExcel->Workbooks->Close();
pExcel->Quit();
__object_delete(pExcel);
return 0;

我自己改了点,做试验,("xinhao")为16位整形数已经设置成1,("miao"); 为16位整形数 是想写到BOOK1中A1内的变量,已经设置了脚本的触发条件为周期型 每500MS  为什么在D盘里没有BOOK1  ,然后我自己手动建立了BOOK1   在A1内  也没有看到数???已经在计算机属性内  启动了全局脚本
请高人帮我看看  错在哪里?  谢谢  我的电脑里安装的是OFFICE2003   是否和这个有关系? 如果想在脚本里使用OFFICE2003
pExcel = __object_create("Excel.Application.9"); //9表示用的是office 2000
这里应该怎么改?
谢谢

问题补充:
xinhao 那里写错了  是BIT变量 不是16位整形数
这段脚本是我按照高人的 自己改的  想做实验用
谢谢各位了

最佳答案

pExcel = __object_create("Excel.Application.9"); 
改成
pExcel = __object_create("Excel.Application");
即可适应各种版本的Excel

提问者对于答案的评价:
万分感谢!!

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

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

相关推荐