关于wincc跟excel的问题

我从网上下了一段c脚本进行生成excel,然后写数据,最后保存退出
c脚本如下:
------------------------------------
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{


int i;
#pragma code ("kernel32.dll")//调用动态链接库

VOID GetLocalTime(LPSYSTEMTIME lpSystemTime);
#pragma code ()
#pragma code("Shell32.dll")//调用动态链接库
VOID ShellExecuteA(HWND, LPCTSTR , LPCTSTR , LPCTSTR , LPCTSTR , INT);
#pragma code()
char FileName[30] = "";
SYSTEMTIME sysTime;
__object* pExcel = NULL; //建立 pExcel 指针 用来对 EXCEL 进行操作
__object* fso=NULL;

HWND handle=NULL;
handle=FindWindow(NULL,"WinCC-运行系统 - ");


GetLocalTime(&sysTime);
//***********************************
//SetTagWord("Minute",sysTime.wMinute);
//i=GetTagWord("Minute")+3;
//if (i>26) { GetTagWord("Minute") ;}
//else if (i<=26)
//{
sprintf(FileName,"d:\\Day_Report_%02d-%02d-%02d.xls",sysTime.wYear,sysTime.wMonth,sysTime.wDay);


pExcel = __object_create("Excel.Application"); //生成文件
pExcel->Visible =0;//控制生成的excel 文件是否可见,当1 时,生成excel文件时可见.
pExcel->Workbooks ->Open (FileName);
pExcel->Worksheets("sheet1")->Range("X1")->Value=GetTagChar("@ServerName");//Return-Type: char* 读取当前计算机名
pExcel->Worksheets("sheet1")->Range("X2")->Value=GetTagChar("@CurrentUser");//Return-Type: char* 读取当前操作员
pExcel->Worksheets("sheet1")->Cells(6,i)->Value=GetTagFloat("TAG1_1");
pExcel->Worksheets("sheet1")->Cells(7,i)->Value=GetTagFloat("TAG1_2");
pExcel->Worksheets("sheet1")->Cells(8,i)->Value=GetTagFloat("TAG1_3");
pExcel->Worksheets("sheet1")->Cells(9,i)->Value=GetTagFloat("TAG1_4");
pExcel->Worksheets("sheet1")->Cells(10, i)->Value=GetTagFloat("TAG1_5");
pExcel->Worksheets("sheet1")->Cells(11, i)->Value=GetTagFloat("TAG1_6");
pExcel->ActiveWorkbook->SaveAs(FileName);//存盘~
//pExcel->ActiveWorkbook->PrintPreview();//可以预览
//if (i>=27) { pExcel->ActiveWorkbook->PrintOut(); }//直接打印
pExcel->Workbooks->Close();//关闭文件
pExcel->Quit();//退出Excel
__object_delete(pExcel);
//}

//return 0;

}

假如我把pExcel->Visible =1;
点击按钮时候(我的c脚本写在左击按下上),那个excel界面会闪一下,然后从D盘中就是没有生成excel文件,这是怎么回事,,,请高手指点一下,,顺便看看这段语句有什么问题??

问题补充:
根据zhangli0- 资深顾问 提示,我用messagebox来调试了一下就是有这样的一个问题:
================================
pExcel = __object_create("Excel.Application"); //可以生成文件 就像附图1一样的,没有单元格的

MessageBox(NULL,FileName,"标22222222222222222222题", MB_OKCANCEL ); //能在对话中显示filename

pExcel->Visible =1; //excel弄成显示的

pExcel->Workbooks ->Open (FileName); 打开的时候就是提示没有找到该路径下的excel表格

最佳答案

在不同的地方插入messagebox,提示不同的内容,看执行到哪里不执行了就是哪里有问题
看不到你的图,说明你的文件保存的路径不对。如果这个路径下没有这个文件,你要先生成这个文件然后再保存数据。

提问者对于答案的评价:
你的思路很不错,谢谢。。。。后来我用GSC Diagnostics模板调试也不错的,,

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月12日 下午8:10
下一篇 2017年11月12日 下午8:10

相关推荐

  • Wincc自动启动出现故障怎么解决?

    打开项目时autostart不可用这么回事?手动点击项目激活可以运行起来?谁能告诉我、、急 最佳答案 是不是项目文件路径中有中文名字啊 提问者对于答案的评价:没有

    SIMATIC WinCC 2019年6月11日
  • Microsoft Script Debugger启动

    各位专家: 为什么我用VBS脚本(按钮,项目函数) WINCC运行时弹出"脚本调试器"不能启动,我安装了脚本调试器后,WINCC运行时,脚本调试器自动弹出,是不…

    SIMATIC WinCC 2019年6月11日
  • wincc面板制作

    如何制作上下左右四个按钮控制一个按钮进行上下左右移动,并实现控制这个按钮可以90度180度旋转 问题补充:具体如图 图片说明:    最佳答案 把要移动的按钮属…

    2021年7月5日
  • 请问大家WINCC C/S结构遇到这种情况是什么原因?

    服务器是SERVER 2016的系统,带了7台客户机。今天突然所有的客户机脚本运行有问题,然后重新激活服务器项目,结果客户机一直都互连不上服务器项目了,报错请看附件照片。…

    2021年7月5日
  • wincc运行出现tag logging runtime过不去?

    wincc 在运行过程中到tag logging runtime 过不去我的计算机名已经改过了没问题我的程序路径也全是英文的没问题求哪位大侠…

    SIMATIC WinCC 2019年6月10日
  • 为什么我的按钮点击的速度很慢

    为什么我的按钮点击的速度很慢,每次点都要等上2秒才有反应,请问是为什么? 问题补充:画面刷新时间?在哪里更改? 最佳答案 可能的原因有:1、画面中使用的图形、元件等对象过多,可以对…

    SIMATIC WinCC 2018年12月3日
  • wincc 用户归档 上传不统一2

    用WINCC 做好用户归档后,ID JOB方式,ID,JOB变量为外部变量,触发程序为全局C动作,触发变量为1秒周期,当PLC变量=1时,让ID,JOB-1&n…

    SIMATIC WinCC 2018年12月7日
  • 博图V15.1中的wincc画面编辑如何添加新元素?

    我的博图wincc画面编辑里面没有量表这一元素,有知道怎么添加的吗?或者想增加新元素怎么操作? 图片说明:    最佳答案 组态KTP精简屏工具箱是没有量表的!…

    2020年11月1日
  • 关于WINCC的符号库

    我在绘制流程图时发现从WINCC的图库中调用的图形不能进行翻转的操作(比如阀门),各位可以指点一下吗? 最佳答案 不是所有的库图形都支持旋转操作。如果在控件属性中找不到旋转属性,那…

    SIMATIC WinCC 2019年6月11日
  • wincc 的报警控件、变量记录控件

    C盘坏掉了 重装了系统 但是之前已经已经把数据做了另外备份到了D盘 重装系统后怎么把之前的数据调用出来 最佳答案 项目也在C盘吗?如果是在D盘的话,直…

    2021年7月5日