WINCC报表数据不是从第3行写?

有个往EXCEL里写数据的报表,VBS,是一天产生一个文件夹,但是现在出现这样一个怪事,从运行的第一天数据是从第3行写数据进去,比如写到第6行,当第二天的数据是从第7行开始写,前面6行是空的,也就是说下一天的数据开始写的行数就是上一天数据结束的那行开始,而不是从第3行开始,还一个问题就是下一天的数据的开始,比如是7月6号,那么第一个数据有的时候会是有一个7月5号的数据作为7月6号的开始第一个数据?这两个问题是出在哪里,请麻烦具体说说改哪里?
 int gscAction( void )
 {
 #pragma code ("kernel32.dll")
 VOID GetLocalTime(LPSYSTEMTIME lpSystemTime);
 #pragma code ()
 char FileName[25] = "",Date[2] = "";
 static int i=2;
 SYSTEMTIME sysTime;
 __object* pExcel = NULL; 
 __object* fso=NULL;
 GetLocalTime(&sysTime);
 sprintf(FileName,"e:\\%d年%d月%d日.xls",sysTime.wYear,sysTime.wMonth,sysTime.wDay);
 sprintf(Date,"%d",sysTime.wDay);

 i++;

 pExcel = __object_create("Excel.Application");
 fso=__object_create("Scripting.FileSystemObject");
 pExcel->Visible = 0;
 if(!(fso->FileExists(FileName)))
 {
 pExcel->Workbooks ->Open ("e:\\book1.xls");
 pExcel->ActiveWorkbook->SaveAs(FileName);
 }
 __object_delete(fso);
 pExcel->Workbooks ->Open (FileName);

 
 pExcel->WorkSheets("sheet1")->Cells(i,1)->Value=GetTagChar("riqi");

 pExcel->WorkSheets("sheet1")->Cells(i,2)->Value=GetTagChar("shijian");

 pExcel->WorkSheets("sheet1")->Cells(i,3)->Value=GetTagDWord("补水"); //Return-Type: DWORD 

 pExcel->WorkSheets("sheet1")->Cells(i,4)->Value=GetTagDWord("供水");
  
 pExcel->WorkSheets("sheet1")->Cells(i,4)->Value=GetTagDWord("yali");
 pExcel->ActiveWorkbook->Save();pExcel->Workbooks->Close();
 pExcel->Quit();
 __object_delete(pExcel);/

最佳答案

经过测试发现应该是你的i没有复位造成的第一个问题,我估计你的Wincc一直在激活运行,到了00:00:00的时候日期更换了以后,但是是你的I还是继续I++,所以会在后一行更新,建议你在日期更换的时候复位一下I就应该可以解决这个问题。在这个地方增加一个i=2,
 if(!(fso->FileExists(FileName)))
 {
 i=2;
 pExcel->Workbooks ->Open ("e:\\book1.xls");
 pExcel->ActiveWorkbook->SaveAs(FileName);
 }

提问者对于答案的评价:
谢谢

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

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

相关推荐

  • 想学习西门子的触摸屏HMI,求各位大神指教好的学习方法

    因为没有硬件,想先下个西门子触摸屏的的编程软件练习一下,不知道可行不?另外触摸屏的编程WinWincc吗?从哪可以下载? 最佳答案 如果只是学习,建议安装博途,连编程带触摸屏带上位…

    SIMATIC WinCC 2020年11月1日
  • wincc客户机显示和WEB浏览显示问题

    有一个成缆线选择Button  在客户机上单击会显示一个Text文本。但是在web上这么做就不显示。请问是为什么,如何解决 最佳答案 用脚本做的吗?把脚本改成变…

    SIMATIC WinCC 2021年7月5日
  • 大侠们请进 wicc fiexible报警日期不对啊!!

    为什么wicc fiexible报警日期不是显示当前的日期,而是以前的,能不能修改啊,!!!  在这先谢过各位!!! 问题补充:我是用K-TP178m…

    SIMATIC WinCC 2019年6月11日
  • 求wincc audit v7.3下载链接

    如题,谢谢 最佳答案 官方下载地址:http://www.wincc.com.cn/upload/Audit_7_0300_Upd1.zip 提问者对于答案的评价:谢谢

    SIMATIC WinCC 2021年7月5日
  • Wincc flerible集成

    安装Wincc flerible2007要集成在STEP7 V5.4里,应该先装STEP7 V5.4 还是先装Wincc fler…

    SIMATIC WinCC 2019年6月11日
  • Wincc用户管理同步

    我现在有二台工控机上面运行的是Wincc6.0我现在想实现二台机子的用户同步就是说在A机上建的用户也会自动在B机上建立,用户受权也得同步。我用的多用户可以实现。但是机子有点卡。有没…

    SIMATIC WinCC 2017年7月25日
  • wincc变量记录问题

    今天重装系统了是XP SP3的,然后装了wincc是6.0sp3的,当打开一个项目时,激活条到变量记录那就报错说CCArchiveManager.exe有问题,我将这个项…

    SIMATIC WinCC 2019年6月11日
  • 活套角度运算

    我采用6RA70检测活套编码器的反馈脉冲数,传到PLC,在传给WINCC,现场使用的码盘为1000个脉冲,活套减速机的减速比为6.3,安装在减速机的高速轴,脉冲计数采用4倍运算,请…

    SIMATIC WinCC 2019年6月11日
  • wincc项目激活

    我在计算机属性设置里把变量记录选上项目就不能激活把变量记录不选项目就能激活请问是什么原因? 最佳答案 1.多半是WINCC的问题; 2。我碰到过很多回这样的问题,重新安装…

    SIMATIC WinCC 2019年6月11日
  • WinCC每天自动发送归档数据到某个邮箱

    WinCC每天把归档的数据记录生成一个附件,譬如今天生成附件1、明天附件2、后天附件3,如此类推;WinCC今天自动在某个时间譬如08:00把附件1发送到某个邮箱,明天也是08:0…

    SIMATIC WinCC 2021年7月5日