0

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"); も使用してみました。しかし、正しい構文がわかりません。

事前に助けてくれてありがとう!

4

1 に答える 1

0

アプリを実行するときにファイルが開かれていないことを確認してください。

于 2013-02-18T09:52:59.057 に答える