新規ブックを作成する




【オブジェクト】

  _Workbooks

【メソッド】

    _WorkbookPtr Add ( const _variant_t & Template )

【戻り値】

    新規作成されたワークブックのオブジェクト

【引数】

    Template :
        (省略可能)
        作成するワークブック形式を指定できます。
        指定する値は、XlWBATemplateの値を使用します

    enum XlWBATemplate
    {
        xlWBATChart = -4109,
        xlWBATExcel4IntlMacroSheet = 4,
        xlWBATExcel4MacroSheet = 3,
        xlWBATWorksheet = -4167
    };

【サンプル】

//Excelを操作するためのタイプライブラリを読みこむ(Excel2000用)
#import "C:\Program Files\Microsoft Office\Office\Mso9.dll" no_namespace rename("DocumentProperties", "DocumentPropertiesXL")   
#import "C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\Vbe6ext.olb" no_namespace   
#import "C:\Program Files\Microsoft Office\Office\excel9.olb" rename("DialogBox", "DialogBoxXL") rename("RGB", "RBGXL") rename("DocumentProperties", "DocumentPropertiesXL") no_dual_interfaces


//名前空間の設定
using namespace Excel;

//オブジェクトの定義
_ApplicationPtr pXL;


//新規ワークブックを作成
void CImp_wbk_AddDlg::OnButton1() 
{
    COleVariant oleData;

     //Excelの起動
    pXL.CreateInstance(L"Excel.Application");

    //Excelを表示
    pXL->Visible = TRUE;

    //オプションに設定してある数のワークシートを含むワークブック作成
    pXL->Workbooks->Add(xlWBATChart);    

    //一枚のグラフシートを含むワークブックを作成
    oleData = (short)xlWBATChart;
    pXL->Workbooks->Add(oleData);

    //一枚のExcel4インターナショナルマクロシートを含むワークブックを作成
    oleData = (short)xlWBATExcel4IntlMacroSheet;
    pXL->Workbooks->Add(oleData);

    //一枚のExcel4マクロシートを含むワークブックを作成
    oleData = (short)xlWBATExcel4MacroSheet;
    pXL->Workbooks->Add(oleData);

    //一枚のワークシートを含むワークブックを作成
    oleData = (short)xlWBATWorksheet;
    pXL->Workbooks->Add(oleData);

}

void CImp_wbk_AddDlg::OnButton2() 
{
    pXL->DisplayAlerts = false;
    pXL->Quit();
    pXL = NULL;
}


[サンプル・ソース]