1. 程式人生 > >MFC 操作Excel 同一個工作簿中依次新增sheet頁

MFC 操作Excel 同一個工作簿中依次新增sheet頁

1.備註:新增一個新的工作簿,其預設包含sheet1

2.獲取當前的sheet頁總數

    long CWorksheets:: get_Count();

3.獲取最後一個sheet頁

    LPDISPATCH CWorksheets:: get_Item(VARIANT& Index);

4.在最後一個sheet頁後面依次新增

    LPDISPATCH CWorksheets::Add(VARIANT& Before, VARIANT& After, VARIANT& Count, VARIANT& Type);

5.示例程式碼:

    CWorkbook book;
CWorkbooks books;
CWorksheet sheet;
CWorksheets sheets;

LPDISPATCH lpDisp;

        /*增加一個新的工作簿*/

lpDisp = books.Add(vtMissing);

book.AttachDispatch(lpDisp);

/*得到工作簿中的Sheet的容器*/

sheets.AttachDispatch(book.get_Sheets());

/*建立一個新的Sheet2*/
LPDISPATCH lpDispLast =sheets.get_Item(COleVariant(sheets.get_Count()));
lpDisp = sheets.Add(vtMissing, _variant_t(lpDispLast), _variant_t((long)1), vtMissing);
sheet.AttachDispatch(lpDisp);

sheet.put_Name(“Sheet2”);

6.結果

    當前工作簿存在兩個sheet頁,sheet2位於sheet1後面