作者:乔山办公网日期:
返回目录:excel表格制作
如果用OLE这个是必须的,我敢保证,
如果用ADO的话就不用了,一般都自带了excel的驱动
VC操作Excel目前我搜到的有两类方百法:
1、如3楼所说用微软提供的接口,利用OLE来实现;这个不细说
2、还有一些人写了度一些三方的类和控件,也可以操作Excel,有BasicExcel和CSpreadSheet等,我自己的体会是,BasicExcel是更基础的一种方法,使用方便,CSpreadSheet的功能比较强大,但知是是基于数据库的,有些东西还是不方便。
具体的实现方法楼道主可以自己搜,都可以搜到的。
另外,如果你是内要用MFC来操作Excel,就像我们平时写Excel一样,最好用OLE技术,如果只是单纯的读取数据,用BasicExcel就不错,读取速度快。实际例子的我这里有现成的,需要可以找我~~容
int *pBuf;
pBuf = new int[UsedRows+1];
int j=0;
for (int k=1;k<i;k++)
{
CString strSingel;
strSingel = AstrALLstr[k-1];
int nBuf;;
nBuf=atoi(strSingel);
memcpy(pBuf+j,&nBuf,sizeof(&nBuf));
j++;
}
//下面就可以对动知态数道组的值进行版你想要的计算了,例如:权
int nCal;
nCal = pBuf[300]+pBuf[400];
delete []pBuf;
pBuf =NULL;
ClassWizard->MessageMaps->AddClass->From a type library
选择Office安装目录下的ExcelX.olb(只要安装了Office,总会有一个,x根据版本不同而不同)
可以让mfc自动为你生成excel库的包装类如下
_Application
_Workbook
_Worksheet
Workbooks
Worksheets
Range
然后添加excel的头文件,在程序开始CoInitialize(NULL) 来初始化com.
定义上面的类对象来访问excel,
根对象是 _Application
可以定义
_Application App;
App.SetVisible(TRUE); //使Excel可见,也可不可见,一样可以用程序访问,只是你看不e5a48de588b67a64338到。
App.CreateDispatch("Excel.Application"); //创建Excel程序对象。
然后通过得到的App的成员函数再得到Worksheets,Workbooks等对象,来访问Excel.你自己可以搜索相关成员函数。 单元格的值可通过Range对象的成员函数来访问。