我正在使用 C++ 创建一个 Excel 图表。我在用几张纸保存工作簿时遇到问题。这是我的代码:
try
{
CoInitialize(NULL);
Excel::_ApplicationPtr XL;
XL.CreateInstance(L"Excel.Application");
XL->Visible=false;
Excel::_WorkbookPtr workbook = XL->Workbooks->Add(Excel::xlWorksheet);
Excel::_WorksheetPtr pSheet= XL->ActiveSheet;
for (i='1';i<='z';i++){
pSheet = XL->Worksheets->Add();
char arr[25];
sprintf(arr, "Podaci za %c", i);
pSheet->Name = arr;
...
}
pSheet = XL->Worksheets->Add();
pSheet->Name = "some page";
pSheet->SaveAs("c:\\test.xls");
workbook->Close();
XL->Quit();
}
catch(_com_error & error)
{
printf("\n Greska u komunikaciji s MS Excelom.");
}
CoUninitialize();
我有一个创建几张纸的 for 循环。“...”代表我填写表格的代码部分。一切都很好,直到我尝试保存它。现在,当它到达 SaveAs() 时,它会跳起来捕捉。我也尝试使用 workbook->saveas("table.xls"); 但我不知道正确的语法。
提前感谢您的帮助!