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後面