16,472
社区成员
发帖
与我相关
我的任务
分享
_Application excelapp;
Workbooks books;
_Workbook book;
Sheets sheets;
_Worksheet sheet;
Range range;
Range usedRange;
LPDISPATCH lpDisp;
COleVariant vResult;
COleVariant
covTrue((short)TRUE),
covFalse((short)FALSE),
covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
void CMy111Dlg::OnButton1()
{
void write1();
if(!excelapp.CreateDispatch("Excel.Application"))
{
MessageBox("确认是否安装了Excel");
}
CString strFullName = AfxGetApp()->m_pszHelpFilePath;
//得到的是:"X:\\XXXX\\XXX.hlp",即为X:\XXXX\XXX.hlp
//解析路径,得到当前运行程序所在目录
char drive[_MAX_DRIVE];
char dir[_MAX_DIR];
_splitpath(strFullName, drive, dir, NULL,NULL);
CString strPath;
strPath.Format("%s%s", drive, dir);
CString strFilePath1=strPath+"111.xlsx";
books=excelapp.GetWorkbooks();
book=books.Add(covOptional);
sheets=book.GetSheets();
sheet=sheets.GetItem(COleVariant((short)1));
for(int ri=1;ri<=2;ri++)
{
for(int rj=1;rj<=6;rj++)
{
range.AttachDispatch(sheet.GetCells());
range.AttachDispatch(range.GetItem (COleVariant((long)ri),COleVariant((long)rj)).pdispVal);
CString atmp;
atmp.Format("%d",rj);
range.SetValue2(COleVariant(atmp));
}
}
write1();
book.SaveAs(COleVariant(strFilePath1),covOptional,covOptional,covOptional,covOptional,covOptional,0,
covOptional,covOptional,covOptional,covOptional,covOptional,covOptional);
range.ReleaseDispatch();
sheet.ReleaseDispatch();
sheets.ReleaseDispatch();
book.Close(covOptional,COleVariant(strFilePath1),covOptional);
books.Close();
book.ReleaseDispatch();
books.ReleaseDispatch();
excelapp.Quit();
excelapp.ReleaseDispatch();
void write1()
{
CoInitialize(NULL);
for(int ri=3;ri<=4;ri++)
{
for(int rj=1;rj<=6;rj++)
{
range.AttachDispatch(sheet.GetCells());
range.AttachDispatch(range.GetItem (COleVariant((long)ri),COleVariant((long)rj)).pdispVal);
CString atmp;
atmp.Format("%d",rj);
range.SetValue2(COleVariant(atmp));
}
}
CoUninitialize();
}
WinExec("cmd /c taskkill /F /IM EXCEL.EXE",SW_HIDE);