发布于 2008-10-12 22:16:12
0楼
斑竹,按照你的说法作了,我把实时的数据写入到了EXCEL表格中
但是现在的问题是,虽然可以把实时数据写到EXCEL中,但是在wincc中的图标没有实时同步的更新!
#pragma code ("kernel32.dll")
#pragma code ()
FILE*pFile=NULL;
char FileName[20] = "";
double a,b,c;
__object* pExcel = NULL;
a=GetTagFloat("a"); //Return-Type: float
b=GetTagFloat("b"); //Return-Type: float
c=GetTagFloat("c"); //Return-Type: float
sprintf(FileName,"E:\\book2.xls");
if((pFile=fopen(FileName,"r"))==NULL)
{
pExcel = __object_create("Excel.Application"); //?????.9?????office 2000
//pExcel->Visible = 1;
pExcel->Workbooks ->Open ("E:\\book1.xls");
pExcel->Worksheets("sheet1")->Range("A1")->Value=5000; //?wincc????????A1?
pExcel->Worksheets("sheet1")->Range("A2")->Value=5000; //?wincc????????A2?
pExcel->ActiveWorkbook->SaveAs(FileName);
pExcel->Workbooks->Close();
pExcel->Quit();
__object_delete(pExcel);
}
else
{
pExcel = __object_create("Excel.Application"); //?????.9?????office 2000
pExcel->Workbooks ->Open ("E:\\book2.xls");
pExcel->Worksheets("sheet1")->Range("A1")->Value=a; //?wincc????????A1?
pExcel->Worksheets("sheet1")->Range("A2")->Value=b; //?wincc????????A2?
pExcel->Worksheets("sheet1")->Range("A3")->Value=c; //?wincc????????A2?
pExcel->Worksheets("sheet1")->Range("B1")->Value=5000; //?wincc????????A1?
pExcel->Worksheets("sheet1")->Range("B2")->Value=5000; //?wincc????????A2?
pExcel->Worksheets("sheet1")->Range("B3")->Value=4000; //?wincc????????A2?
pExcel->ActiveWorkbook->Save();
pExcel->Workbooks->Close();
pExcel->Quit();
__object_delete(pExcel);