如题,打开一个Excel文件后,想逐个访问它的Sheet,请问怎样才能得到它的Sheet数?
解决方案 »
- 哪位看过《windows程序设计》第五版
- Unhandle exception in xx.exe:0xC0000005:Access Violation
- vc 如何获取word中图片数据
- 用dll资源方式做的多语言,其他都没问题,只是Listctrl的列标题出现乱码
- 就是想把字段 number 里的最大值找到,并赋给 int nMaX
- 谁来告诉我这是什么控件(高分求助)?
- 一个有关部门msdn不能使用的问题
- 高分请教一个(网络问题)问题(400分)
- 我应该如何排序
- 在其它版本的操作系统下,程序运行不正常
- 急!!如何判断文件的字符与定义的字符一致
- 关闭explorer.exe再打开,系统托盘的图标丢失
另外,怎么得到Sheet数啊?很急啊!!!!!CFileDialog *dlgOpen = new CFileDialog(true,NULL,NULL,OFN_HIDEREADONLY,
"Excel Files|*.xls",NULL);
if(dlgOpen->DoModal() == IDOK)
{
//int iSheetCount;
CString strMsg; _ApplicationPtr pApp = NULL;
_WorkbookPtr pWB = NULL;
_WorksheetPtr pASheet = NULL;
SheetsPtr pSheets = NULL;
RangePtr pRange = NULL; pApp.CreateInstance("Excel.Application"); _bstr_t bstrFile = _T(dlgOpen->GetFileName());
pWB = pApp->GetWorkbooks()->Open(bstrFile,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing);
pSheets = pWB->GetSheets();
pASheet = pSheets->GetItem((short)1);
pRange = pASheet->GetCells();
pRange->PutItem((short)1,(short)1,(_variant_t)"David");
pWB->Close((_variant_t)true,vtMissing,vtMissing);
pApp->Quit(); return;
}
_Workbook pExcelBook;
_Worksheet pExcelSheet;
Workbooks pExcelBooks;
Worksheets pExcelSheets;
我是用这个做的.worksheets里有一个GETCOUNT的.
你打开失败的话初始化COM环境了没.