_Application ExcelApp;
Workbooks wbsMyBooks;
_Workbook wbMyBook;
Worksheets wssMysheets;
_Worksheet wsMysheet;
Range rgMyRge;
//创建Excel 2000服务器(启动Excel)
if (!ExcelApp.CreateDispatch("Excel.Application",NULL))
{
AfxMessageBox("创建Excel服务失败!");
return;
}
//得到路径
char cCurrentDir[255];
::GetCurrentDirectory(255, cCurrentDir);
CString str = cCurrentDir;
int iPos = str.ReverseFind('//');
CString str1 = str.Left(iPos);
CString strDirectory;
strDirectory = _tcsdup(str1 + "//MyTemplate.xlt");
//利用模板文件建立新文档
wbsMyBooks.AttachDispatch(ExcelApp.GetWorkbooks(),true);
wbMyBook.AttachDispatch(wbsMyBooks.Add(_variant_t(strDirectory)));
//得到Worksheets
wssMysheets.AttachDispatch(wbMyBook.GetWorksheets(),true);
//得到sheet1
wsMysheet.AttachDispatch(wssMysheets.GetItem(_variant_t("sheet1")),true);
//得到全部Cells,此时,rgMyRge是cells的集合
rgMyRge.AttachDispatch(wsMysheet.GetCells(),true);
//设置1行1列的单元的值 行 列
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)1),_variant_t("名称"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)2),_variant_t("时间"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)3),_variant_t("信息"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)4),_variant_t("级别"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)5),_variant_t("确认时间"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)6),_variant_t("人"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)7),_variant_t("啊啊"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)8),_variant_t("cc"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)9),_variant_t("gh元"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)10),_variant_t("h"));
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)11),_variant_t("dsf"));
//int j=m_theListCtrl.GetItemCount();
//CString str;
//str=m_theListCtrl.GetItemText(0,1);
//MessageBox(str);
for(int i = 2; i < m_theListCtrl.GetItemCount()+2; i++)
{
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)1),_variant_t(m_theListCtrl.GetItemText(i-2,0)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)2),_variant_t(m_theListCtrl.GetItemText(i-2,1)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)3),_variant_t(m_theListCtrl.GetItemText(i-2,2)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)4),_variant_t(m_theListCtrl.GetItemText(i-2,3)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)5),_variant_t(m_theListCtrl.GetItemText(i-2,4)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)6),_variant_t(m_theListCtrl.GetItemText(i-2,5)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)7),_variant_t(m_theListCtrl.GetItemText(i-2,6)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)8),_variant_t(m_theListCtrl.GetItemText(i-2,7)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)9),_variant_t(m_theListCtrl.GetItemText(i-2,8)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)10),_variant_t(m_theListCtrl.GetItemText(i-2,9)));
rgMyRge.SetItem(_variant_t((long)i),_variant_t((long)11),_variant_t(m_theListCtrl.GetItemText(i-2,10)));
}
//得到所有的列
rgMyRge.AttachDispatch(wsMysheet.GetColumns(),true);
//得到第一列 //设置列宽
rgMyRge.AttachDispatch(rgMyRge.GetItem(_variant_t((long)1),vtMissing).pdispVal,true);
rgMyRge.SetColumnWidth(_variant_t((long)15));
rgMyRge.AttachDispatch(rgMyRge.GetItem(_variant_t((long)2),vtMissing).pdispVal,true);
rgMyRge.SetColumnWidth(_variant_t((long)15));
rgMyRge.AttachDispatch(rgMyRge.GetItem(_variant_t((long)3),vtMissing).pdispVal,true);
rgMyRge.SetColumnWidth(_variant_t((long)16));
rgMyRge.AttachDispatch(rgMyRge.GetItem(_variant_t((long)4),vtMissing).pdispVal,true);
rgMyRge.SetColumnWidth(_variant_t((long)15));
rgMyRge.AttachDispatch(rgMyRge.GetItem(_variant_t((long)5),vtMissing).pdispVal,true);
rgMyRge.SetColumnWidth(_variant_t((long)15));
//显示excel表
wbMyBook.SetSaved(true);
ExcelApp.SetVisible(true);
//wbMyBook.PrintPreview(_variant_t(false));
//释放对象
rgMyRge.ReleaseDispatch();
wsMysheet.ReleaseDispatch();
wssMysheets.ReleaseDispatch();
wbMyBook.ReleaseDispatch();
wbsMyBooks.ReleaseDispatch();
ExcelApp.ReleaseDispatch();
Excel 2
最新推荐文章于 2024-09-18 17:51:46 发布