📄 abaoexcel.h
字号:
#ifndef _abaoExcel_h_
/************************************
REVISION LOG ENTRY
Revision By: abao++
Revised on 2006-8-11 8:13:07
Comments: ...
看了无数关于vc调用excel的贴,可是都是原始的方法,用起来一个字,不方便
为了做一个项目,特封装了一个类,功能那是非常之。。。。。。。。。。弱弱的。
不过一般简单的excel文档可以搞定了。而且,这个是可以扩展,可以继承的,,继承就免了吧,
改一下俺不会告你侵权的,不过最好不要擦除俺的功劳,虽然俺只写了几个简单函数
调用前请确保已经调用了如下函数初始化com库,
if (CoInitialize(NULL)!=0)
{
AfxMessageBox("初始化COM支持库失败!");
exit(1);
}
************************************/
#define _abaoExcel_h_
#include "excel.h"
#include <comdef.h>
enum RangeHAlignment{HAlignDefault=1,HAlignCenter=-4108,HAlignLeft=-4131,HAlignRight=-4152};
enum RangeVAlignment{VAlignDefault=2,VAlignCenter=-4108,VAlignTop=-4160,VAlignBottom=-4107};
class AbaoRange
{
Range rg;//内部用range
public:
AbaoRange(Range& range);//从一个range构造
void Merge();//合并
AbaoRange& operator=(const CString s); //填入一个s,,
AbaoRange& operator=(const char* str);//填入char*
AbaoRange& operator=(Range& range);//赋值另一个range
int Border(short mode=1,long BoderWidth=1,long ColorIndex=1, VARIANT color=COleVariant((long)DISP_E_PARAMNOTFOUND,VT_ERROR));
//设置边框,参数我还没有弄清楚
int SetHAlign(RangeHAlignment mode=HAlignDefault);
//设置对齐方式
int SetVAlign(RangeVAlignment mode=VAlignDefault);
//设置竖直对齐
};
class AbaoExcel
{
public:
_Application App; //excep
Workbooks workbooks; //workbooks
_Workbook workbook; //workbook
Sheets sheets; //sheet
_Worksheet sheet; //当前的表 ,可以通过SelectSheet 来改变
Range range; //range
AbaoExcel();
~AbaoExcel();
_Worksheet& ActiveSheet();//当前活动的sheet,在SelectSheet 后改变
Range& ActiveSheetRange();//当前的range,在使用GetRange后改变
// int Add(CString& ExtPath=CString(""));//从一个模版构造
int Add(CString& ExtPath);//从一个模版构造
_Worksheet& SelectSheet(CString& SheetName);//选择一个已知表名的表
_Worksheet& SelectSheet(char* SheetName){return SelectSheet(CString(SheetName));};//选择一个已知表名的表
_Worksheet& SelectSheet(int index);//选择一个已知表名的表
int SetCell(int row,int col,CString &str);//指定行列的单元格填入值
int SetCell(int row,int col,char* str);//指定行列的单元格填入值
int SetCell(int row,int col,long lv);//指定行列填入long值
int SetCell(int row,int col,double dv,int n=6);//指定行列填入浮点值,并截取为指定的小数位
Range& GetRange(CString RangeStart,CString RangeEnd);//获取range,
Range& GetRange(CString RangeStr);//获取range A1:A2模式
int MergeRange(CString RangeStr);//合并Range
int SetVisible(bool visible) {App.SetVisible(visible);return 1;}//设置为可见以及隐藏
int SaveAs(CString &FileName);//保存到文件名
int Save();
int Copy(_Worksheet &sht);//复制一个sheet
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -