看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《hyc325 (SONY VAIO-FE25TP)》之銘言: : 我所使用的新增sheet方式是以下方法: : 宣告省略...... : sheet=sheets.GetItem(COleVariant((short)(3))); : sheet.Activate(); : COleVariant vBefore,vAfter,vCount,vType; : //Default : vBefore.vt=VT_ERROR; : vBefore.scode=DISP_E_PARAMNOTFOUND; : //Insert next to active sheet : vAfter.vt=VT_DISPATCH; : vAfter.pdispVal=book.GetActiveSheet(); : //Insert 1 sheet : vCount.vt=VT_I2; : vCount.iVal=1; : //Insert a Worksheet object : vType.vt=VT_I2; : vType.iVal=-4167; // xlWorksheet : sheets.Add(vBefore,vAfter,vCount,vType); 我截取出我包出來的 class CExcel 一段 private: _Application objApp; Workbooks objBooks; _Workbook objBook; Worksheets objSheets; _Worksheet objSheet; //===================================================================================== // 插入第 nIndex 個 Sheet //===================================================================================== BOOL CExcel::InsertSheet(long nIndex, CString SheetName) { if(nIndex <=0 || nIndex > objSheets.GetCount()) return FALSE; objSheet = objSheets.GetItem(COleVariant(nIndex)); objSheet.Activate(); objSheets.Add(VOptional,VOptional,VOptional,VOptional); objSheet = objSheets.GetItem(COleVariant(nIndex)); objSheet.SetName(SheetName); return TRUE; } -- YouLoveMe() ? LetItBe() : LetMeFree(); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.76.142
tropical72:話說我看你第二次發這主題了,你excel打算寫到多強大? 12/09 00:19
tropical72:如果要很複雜功能的話,有考慮要轉VBA嗎? 12/09 00:20
ericinttu:我應該要學起來, 要不然都偷懶用BCB連excel XD 12/09 01:03
ericinttu:習慣用C來處理事情的話, 還是比VBA順手得多. 12/09 01:04
tropical72:事實上BCB連excel的確比VC方便許多。 12/09 01:30