基本导入和导出excel
来源:互联网 发布:美工助理面试自我介绍 编辑:程序博客网 时间:2024/06/06 10:48
1.读取(导入)
(1)创建excel服务器,代码为:
if(!app.CreateDispatch("Excel.Application"))
{
AfxMessageBox("无法启动Excel服务器!");
return;
}
(2)打开.xls文件,代码为:
books.AttachDispatch(app.get_Workbooks());
lpDisp = books.Open("C:\\Documents and Settings\\刘帅政\\桌面\\in.xls",
covOptional, covOptional, covOptional, covOptional, covOptional,
covOptional, covOptional, covOptional, covOptional, covOptional,
covOptional, covOptional, covOptional, covOptional );
(3)得到Workbook,代码为:
book.AttachDispatch(lpDisp);
(4)得到Worksheet,代码为:
sheets.AttachDispatch(book.get_Worksheets());
(5)得到当前活跃的Worksheet,代码为:
lpDisp=book.get_ActiveSheet();
sheet.AttachDispatch(lpDisp);
(6)读取第一个单元格的值,代码为:
range.AttachDispatch(sheet.get_Cells());
range.AttachDispatch(range.get_Item(COleVariant((long)1),COleVariant((long)1)).pdispVal);
vResult =range.get_Value2();
CString str;
if(vResult.vt == VT_BSTR) //字符串
{
str=vResult.bstrVal;
}
else
if (vResult.vt==VT_R8) //8字节的数字
{
str.Format("%f",vResult.dblVal);
}
else
if(vResult.vt==VT_EMPTY) //单元格空的
{
str="";
}
当然在添加上述代码时应该先添加变量,代码为:
CApplication app;
CWorkbooks books;
CWorkbook book;
CWorksheets sheets;
CWorksheet sheet;
CRange range;
CRange iCell;
LPDISPATCH lpDisp;
COleVariant vResult;
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
2.导出
(1)得到保存文件名,代码为:
fname="C:\\Documents and Settings\\刘帅政\\桌面\\out.xls";
(2)创建excel文件,代码为:
objApp.m_bAutoRelease=true;
if(!objApp.CreateDispatch("Excel.Application"))
{
AfxMessageBox("Failed to connect to Excel!");
return;
}
(3)得到Workbooks,代码为:
objBooks=objApp.get_Workbooks();
(4)打开excel文件,代码为:
objBook.AttachDispatch(objBooks.Add(_variant_t("")));
objSheets=objBook.get_Sheets();
(5)定义第一个excel对象,代码为:
objSheet=objSheets.get_Item((_variant_t)short(1));
sheetname="sheetname";
objSheet.put_Name(sheetname);
objSheet.Activate();
objRange.AttachDispatch(objSheet.get_Cells(),true);
(6)设定写入A1单元,代码为:
s1.Format("A1");
e1=s1;
objRange1=objSheet.get_Range(_variant_t(s1),_variant_t(s1));
注:如果想要写入其他单元,只需改变其标志位
s="111.11";
注:s是我们要写入的东西,如果s是一个字符串,则为“‘111”,若是数字,则为“111”
(7)将s写入A1,代码为:
objRange1.put_FormulaR1C1(_variant_t(s));
(8)保存文件,代码为:
objBook.SaveAs(_variant_t(fname),varFormat,covOptional,covOptional,covOptional,covOptional,0,covOptional,covOptional,covOptional,covOptional,covOptional);
objApp.Quit();
objRange.ReleaseDispatch();
objSheet.ReleaseDispatch();
objSheets.ReleaseDispatch();
objBook.ReleaseDispatch();
objBooks.ReleaseDispatch();
当然最后我们在导出前也不能忘了定义变量,代码为:
CString sss,s1,s2,e1,e2,strSQL;
CStringArray sa;
CString fname,fname1, sheetname,s;
CApplication objApp;
CWorkbooks objBooks;
CWorkbook objBook;
CWorksheets objSheets;
CWorksheet objSheet;
CRange objRange,objRange1,objRange2;
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
COleVariant covTrue((short)TRUE), covFalse((short)FALSE),\
varFormat((short)-4143),varCenter((short)-4108),varLeft((short)-4131),varText("TEXT",VT_BSTR),var,\
varRange1("A1",VT_BSTR),varRange2("D1",VT_BSTR);
- 基本导入和导出excel
- Excel导入和导出
- excel导出和导入。
- MFC 导入 和导出 Excel
- C#Excel导入和导出
- C#Excel导入和导出
- MFC导入和导出excel
- excel导入和导出实例
- C# 导出和导入excel
- C# 导出和导入excel
- Excel文件导入和导出
- PB 导入和导出Excel
- Excel表格导入和导出
- 导出模板和导入Excel
- PHP Excel导入和导出
- excel的导入和导出
- C# 导入和导出EXCEL
- POI导入和导出Excel
- Java中连接各种数据库
- 关于大公司和小公司的选择
- android.net.ConnectivityManager
- 字符串编码之间的转换(GB2312<->UTF8<->Unicode)及URLEncoding
- [SGU]114. Telecasting station
- 基本导入和导出excel
- DBCP 应用的总结(一)
- 水晶报表10 打印、导出按钮不能用
- 利息计算器
- 转载:C++输出格式控制
- 通过书中的一个小例子来了解一下简单的python基础
- VS2010中安装asp.net mvc3.0出错解决办法
- C++ 四则运算表达式(简单的+-*/带括号) 栈
- 海量数据处理面试题集锦