最全的OLE操作Excel的完整代码(2)_yedezhanghao的博客-CSDN博客


本站和网页 https://blog.csdn.net/yedezhanghao/article/details/7467165 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

最全的OLE操作Excel的完整代码(2)_yedezhanghao的博客-CSDN博客
最全的OLE操作Excel的完整代码(2)
yedezhanghao
于 2012-04-16 20:10:04 发布
5415
收藏
分类专栏:
XML
文章标签:
excel
工作
数据库
microsoft
报表
function
XML
专栏收录该内容
3 篇文章
0 订阅
订阅专栏
/*------------------------------------------------- //目前真正最全的OLE操作Excel的完整代码 //版本:2007.01.15.01 //C++Builder专家组www.3322ee.com原创文章 //转载请保留本版权信息,谢谢合作 --------------------------------------------------/ //打印设定: //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintTitleRows","$2:$2");//打印标题列 //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintTitleColumns","$A:$A");//打印标题栏 //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintArea","$A$1:$I$15");//打印范围 //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintHeadings",false);//栏名列号 //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintGridlines",false);//打印网格线 //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintComments",xlPrintNoComments);//批注"无" //sh.OlePropertyGet("PageSetup").OlePropertySet("PrintQuality",300);//打印品质 //sh.OlePropertyGet("PageSetup").OlePropertySet("CenterHorizontally",true);//水平置中 //sh.OlePropertyGet("PageSetup").OlePropertySet("CenterVertically",false);//垂直置中 //sh.OlePropertyGet("PageSetup").OlePropertySet("Orientation",xlLandscape);//横向打印 (xlPortrait 纵向打印) //sh.OlePropertyGet("PageSetup").OlePropertySet("Draft",false);//草稿品质 //sh.OlePropertyGet("PageSetup").OlePropertySet("PaperSize",xlPaperA4);//纸张大小 //sh.OlePropertyGet("PageSetup").OlePropertySet("FirstPageNumber",xlAutomatic);//起始页码 //sh.OlePropertyGet("PageSetup").OlePropertySet("Order",xlDownThenOver);//循栏打印 (xlOverThenDown 循列打印) //sh.OlePropertyGet("PageSetup").OlePropertySet("BlackAndWhite",False);//储存格单色打印 //sh.OlePropertyGet("PageSetup").OlePropertySet("Zoom",100);//缩放比例
//设定单元格背景色: //sh.OlePropertyGet("Cells",2,2).OlePropertyGet("Interior").OlePropertySet("ColorIndex",3);//设定指定单元格的背景色
//设定图样:xlGray50可以是1,2,3等数字 //sh.OlePropertyGet("Cells",4,2).OlePropertyGet("Interior").OlePropertySet("Pattern",xlGray50); //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Interior").OlePropertySet("Pattern",xlGray50);//在指定区域设置图样
//设置单元格中的文字距左: //sh.OlePropertyGet("Cells",1,1).OlePropertySet("HorizontalAlignment",xlLeft);//设置单元格中的文字距左 //sh.OlePropertyGet("Cells",1,1).OlePropertySet("VerticalAlignment",xlCenter);//作用不明(垂直和水平居中?) //设置单元格中的文字距中: sh.OlePropertyGet("Cells",1,1).OlePropertySet("HorizontalAlignment",xlCenter);//设置单元格中的文字距中 //sh.OlePropertyGet("Cells",1,1).OlePropertySet("VerticalAlignment",xlCenter);//作用不明 //设置单元格中的文字距右: //sh.OlePropertyGet("Cells",1,1).OlePropertySet("HorizontalAlignment",xlRight);//设置单元格中的文字距右 //sh.OlePropertyGet("Cells",1,1).OlePropertySet("VerticalAlignment",xlCenter);//作用不明 /*------------------------------------------------- //目前真正最全的OLE操作Excel的完整代码 //版本:2007.01.15.01 //C++Builder专家组www.3322ee.com原创文章 //转载请保留本版权信息,谢谢合作 --------------------------------------------------/ //工作表操作: //sh.OlePropertySet("Name", "Sheet的新名字");//重命名当前工作表 //sh.OleFunction("Delete");//删除当前工作表
//画单元格单条边框: //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeLeft).OlePropertySet("Weight",xlThin);//画单元格左边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeLeft).OlePropertySet("LineStyle",xlContinuous);//画单元格左边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeRight).OlePropertySet("Weight",xlThin);//画单元格右边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeRight).OlePropertySet("LineStyle",xlContinuous);//画单元格右边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeTop).OlePropertySet("Weight",xlThin);//画单元格上边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeTop).OlePropertySet("LineStyle",xlContinuous);//画单元格上边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeBottom).OlePropertySet("Weight",xlThin);//画单元格下边框 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertyGet("Item",xlEdgeBottom).OlePropertySet("LineStyle",xlContinuous);//画单元格下边框 //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Borders").OlePropertyGet("Item",xlDiagonalDown).OlePropertySet("Weight",4);//将指定区域的单元格用粗实线划掉
//画单元格完整边框: //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Borders").OlePropertySet("linestyle",2);//给指定区域的所有单元格加上边框,最后的数字:1=细实线框,2=短距虚线框,3=长距虚线框,4=点划线,5=双点划线,6=粗点划线 //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Borders").OlePropertySet("weight",1);//给指定区域的所有单元格加上边框,最后的数字不大于4 //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Borders").OlePropertySet("colorindex",3);//给指定区域的所有单元格加上边框,最后的数字表示颜色 //sh.OlePropertyGet("Cells",11,2).OlePropertyGet("Borders").OlePropertySet("LineStyle",xlContinuous);//给指定单元格四周加上实线边框
//去掉指定区域的边框: //sh.OlePropertyGet("Range","A1:C10").OlePropertyGet("Borders").OlePropertySet("linestyle",xlNone);//去掉指定区域的边框
//画单元格单面边框参数说明: //xlDiagonalDown:绘制从左上到右下角的斜线 //xlDiagonalUp:绘制从左下到右上角的斜线 //xlEdgeBottom:画单元格下边框 //xlEdgeLeft:画单元格左边框 //xlEdgeRight:画单元格右边框 //xlEdgeTop:画单元格上边框 /*------------------------------------------------- //目前真正最全的OLE操作Excel的完整代码 //版本:2007.01.15.01 //C++Builder专家组www.3322ee.com原创文章 //转载请保留本版权信息,谢谢合作 --------------------------------------------------/     try{       //sh.OleFunction("SaveAs", "c:\\123.xls");//保存工作簿,当文件已经存在时会有提示,如果不覆盖会出错,所以正式使用时要预先处理或拦截错误       //sh.OleFunction("SaveAs", WideString("c:\\"+ADODataSet1->FieldByName("creater")->AsString.Trim()+".xls"));//保存工作簿,当文件已经存在时会有提示,如果不覆盖会出错,所以正式使用时要预先处理或拦截错误       //newxls.OleFunction("Close");//关闭表格       //ex.OleFunction("Quit");//退出Excel,释放OLE对象     }catch(...){       return;     }
//结束,如果没有如下代码,EXCEL线程直到应用程序退出才结束: Variant Axl,Workbook,AxSheet,nms,bef,aft; Axl=Unassigned; Workbook=Unassigned; AxSheet=Unassigned; bef=Unassigned; aft=Unassigned; nms=Unassigned; //ShowMessage("Well Done boy!");//弹出对话框 }
//图表部分,备用:------------------------------ /*------------------------------------------------- //目前真正最全的OLE操作Excel的完整代码 //版本:2007.01.15.01 //C++Builder专家组www.3322ee.com原创文章 //转载请保留本版权信息,谢谢合作 --------------------------------------------------/ 1) //开一个新的图表工作簿 Variant Chart; Chart = ex.Exec(PropertyGet("Charts")).Exec(Function("Add")); ex.Exec(PropertySet("Visible") << true); Chart.Exec(PropertySet("Type") << -4100);
2)     //滚动图表     for(int nRotate=5; nRotate <= 180; nRotate += 5){       Chart.Exec(PropertySet("Rotation") << nRotate);     }     for(int nRotate = 175; nRotate >= 0; nRotate -= 5){       Chart.Exec(PropertySet("Rotation") << nRotate);     } /*------------------------------------------------- //目前真正最全的OLE操作Excel的完整代码 //版本:2007.01.15.01 //C++Builder专家组www.3322ee.com原创文章 //转载请保留本版权信息,谢谢合作 --------------------------------------------------/ 3)       //使用ExcelApp的Exec方法新建一新工作薄       newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add");//默认工作簿       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",1);//单工作表       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",2);//图表       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",3);//宏表       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",4);//国际通用宏表       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",5);//与默认的相同       //newxls=(ex.OlePropertyGet("Workbooks")).OleFunction("Add",6);//工作簿且只有一个表 ◎ 在工作表最前面插入一行 Sheet1.PG("Rows", 1).PR("Insert");
◎ 删除一行 ExcelApp.PG("Rows", 2).PR("Delete"); //将第2行删除 ★窗口属性★
◎ 显示属性 ExcelApp.PS("Windowstate", 3); //最大化显示 1---------xlNormal //正常显示 2---------xlMinimized //最小化显示 3---------xlMaximized //最大化显示
◎ 状态栏属性 ExcelApp.PS("StatusBar", "您好,请您稍等。正在查询!"); ExcelApp.PS("StatusBar", false); //还原成默认值
◎ 标题属性: ExcelApp.PS("Caption", "查询系统"); 3、操作图表
★添加图表 Variant Chart;  Chart = ExcelApp.Exec(PropertyGet("Charts")).Exec(Function("Add")); ExcelApp.Exec(PropertySet("Visible") << true); Chart.Exec(PropertySet("Type") << -4100);
★滚动图表
for(int nRotate=5; nRotate <= 180; nRotate += 5) { Chart.Exec(PropertySet("Rotation") << nRotate); } for (int nRotate = 175; nRotate >= 0; nRotate -= 5) { Chart.Exec(PropertySet("Rotation") << nRotate); }
#include "comobj.hpp" //--------------------------------------------------------------------------- // 对指定Excel文件中的指定列进行排序 // strExcelFileName : excel文件名 // nCol : 指定的列号 // nSortStyle : 1:升序,2:降序 void SortExcelColumn(String strExcelFileName, int nCol, int nSortStyle) { Variant vExcelApp, vWorkbook, vRange; vExcelApp = Variant::CreateObject("Excel.Application"); vExcelApp.OlePropertySet("Visible", false); vExcelApp.OlePropertyGet("WorkBooks").OleProcedure("Open", strExcelFileName.c_str()); vWorkbook = vExcelApp.OlePropertyGet("ActiveWorkbook"); vExcelApp.OlePropertyGet("Columns", nCol).OleProcedure("Select"); vExcelApp.OlePropertyGet("ActiveSheet").OlePropertyGet("Cells", 1, nCol).OleProcedure("Select"); vRange = vExcelApp.OlePropertyGet("Selection"); vRange.Exec(Function("Sort")<<vExcelApp.OlePropertyGet("Selection")<<nSortStyle); vWorkbook.OleProcedure("Save"); vWorkbook.OleProcedure("Close"); vExcelApp.OleFunction("Quit"); vWorkbook = Unassigned; vExcelApp = Unassigned; ShowMessage("ok"); }
void __fastcall TForm1::Button1Click(TObject *Sender) { // 对C:\123\123.xls文件中第一个Sheet的第四列进行升序排序 SortExcelColumn("C:\\123\\123.xls", 4, 1); } //
EXCEL之Range,cells,offset,end用法  一.Range属性
1.选择单个单元格(例如A5)
              Range("A5").Select
2.选择一个单元格区域(例如A6:A10)
              Range("A6:A10").Select
3.选择一些不相邻的单元格(例如A1,B6,C8)
              Range("A1,B6,C8").Select
4.选择一些不相邻的单元格和单元格区域(例如A11:D11,B7,C9)
              Range("A11:D11,B7,C9").Select
二.Cells属性
1.选择单个单元格(例如A5)
              Cells(5,1).Select                   Cells(5,A).Select
2.选择一个单元格区域(例如A6:A10)
              Range(Cells(6,1),Cells(10,1)).Select
3.选择工作表中的所有单元格
              Cells.Select
三.Offset属性
1.选择单元格A1下面一行和右边三列的单元格
              Range("A1").Offset(1,3).Select
2.选择单元格D15上面两行和左边一列的单元格
              Range("D15").Offset(-2,-1).Select
3.选择同列单元格(上一行)
              ActiveCell.Offset(-1,0).Select
4.重新选取区域
              ActiveCell.Offset(2,2).Resize(2,4).Select
四.END属性(移动到连续有内容的单元格)
1.选择任何行的最后一个单元格
              ActiveCell.End(xlToRight).Select
2.选择任何行的最前一个单元格
              ActiveCell.End(xlToLeft).Select
3.选择任何列的最后一个单元格
              ActiveCell.End(xlDown).Select
1.选择任何列的最前一个单元格
              ActiveCell.End(xlUp).Select
//---------------------------------------------------------------------------------------------------------- 摘要:利用C++ Builder 5.0可视化的设计工具,强大方便的数据库开发功能和Excel强大的电子表格处理功能,为处理多重报表和复杂报表提供一个良好的方法。  关键词:OLE 自动化客户程序 电子表格  Abstract: The paper provides a good method to make use of powerful database exploitation function of C++ Builder and powerful electron table management function of Excel 2000.  Key words: OLE,automation client programs,electron table  一 引言  C++ builder 5.0是Inprise公司推出的基于C++语言的可视化开发语言,不仅具有新颖的可视化设计工具,还配有数据库引擎,可以通过SQL连接或ODBC访问多种数据库,并具有开发基于Client/Server模式的数据库应用程序的能力。当我们进行数据库软件开发的时候,一般要进行大量报表设计,尤其当涉及到设计多重报表或交叉报表时,我们会觉得力不从心。利用EXCEL强大的电子表格处理功能,可以解决C++ Builder 自带报表工具功能少的缺陷。  C++ Builder调用Excel常用的方法有两种:一种是利用OLE技术调用Excel。OLE(对象的连接和嵌入)是微软公司提出的标准,它提供了一种用源于不同应用程序的信息创建复合文档的强有力方法。第二种是利用ODBC数据库技术调用Excel。第一种方法比较简单,方便,本文讨论的是第一种方法。  二 系统功能要求  随着电子化办公的推广和保险业务的全面开展,账本式的管理方法已不能对数据庞大的电子化设备进行合理有效的管理,这就要求电子化的管理方式,通过计算机和公司局域网实现对设备进行管理。我们开发的电子化管理软件由电子化设备管理数据库、电子化设备耗材管理数据库组成,信息技术管理人员可以对本数据库进行添加、删除、修改、查询等操作,并且可以打印各种查询表格,表格按照EXCEL格式进行打印,并且保存归档。  C++Builder软件自带创建报表工具,如QReport控件。但是相对于EXCEL强大的电子表格处理功能和方便的操作而言,QReport控件功能就显得很苍白。在该管理软件中,我们将查询结果自动生成EXCEL表格,然后在EXCEL环境下进行打印或者保存文件。具体函数实现在下面的段落中进行详细说明,并且都给出示例。  三 函数的实现  要在应用程序中控制Excel2000的运行,首先必须在编制自动化客户程序时使其头文件要包含Comobj.hpp和Utilcls.h。  即:#include  #include  C++ Builder开发者把Excel自动化对象的功能包装在下面的四个Ole Object Class函数中,应用人员可以很方便地进行调用。  设置对象属性:Variant OlePropertySet(属性名,参数……);  获得对象属性:void OlePropertyGet(属性名,参数……);  调用对象方法:1) Variant OleFunction(函数名,参数……);  2) void OleProcedure(过程名,参数……);  C++ Builder中使用OLE控制Excel2000,必须掌握Excel2000的自动化对象及Microsoft Word Visual Basic帮助文件中的关于Excel的对象、方法和属性。对象是一个Excel元素,属性是对象的一个特性或操作的一个方面,方法是对象可以进行的动作。  1、Excel中常用的对象是:Application,Workbooks,Worksheets等。  (1) 创建应用对象:如:  Variant ex;  ex=Variant::CreateObject ("Excel.Application");  或者 ex=CreateOleObject ("Excel.Application");  (2) 创建工作簿对象:  Variant wb;  wb=ex.OlePropertyGet("ActiveWorkBook");  (3) 创建工作表对象:  Variant sheet;  sheet=wb.OlePropertyGet("ActiveSheet");  (4) 创建区域对象:  Variant range;  range=sheet.OlePropertyGet("Range","A1:A10");  2、常用的属性操作:  (1)新建EXCEL文件:  (a):新建系统模板的工作簿  ex.OlePropertyGet("workbooks").OleFunction("Add") //默认工作簿  ex.OlePropertyGet("workbooks").OleFunction("Add",1) //单工作表  ex.OlePropertyGet("workbooks").OleFunction("Add",2) //图表  ex.OlePropertyGet("workbooks").OleFunction("Add",3) //宏表  ex.OlePropertyGet("workbooks").OleFunction("Add",4) //国际通用宏表  ex.OlePropertyGet("workbooks").OleFunction("Add",5) //与默认的相同  ex.OlePropertyGet("workbooks").OleFunction("Add",6) //工作簿且只有一个表  (b):新建自己创建的模板的工作簿  ex.OlePropertyGet("workbooks").OleFunction("Add","C:\\WINDOWS\\Profiles\\test2\\Application Data\\Microsoft\\Templates\\result.xlt"); // 后面写上模板的完全路径,注意"\\"  (2)打开工作簿:  ex.OlePropertyGet("workbooks").OleFunction("open","路径名.xls")  (3)保存工作簿:  wb.OleFunction("Save"); //表格保存  wb..OleFunction("SaveAs","文件名"); //表格保存为,文件路径注意用"\\"  (4)退出EXCEL:  ex.OleFunction ("Quit");  (5)设置字体:  (a):设置单元格字体  sheet.OlePropertyGet("Cells",1,1).OlePropertyGet("Font").OlePropertySet("Name","隶书");  sheet.OlePropertyGet("Cells",2,3).OlePropertyGet("Font").OlePropertySet("size",28);  (b):设置所选区域字体  range.OlePropertyGet("Cells").OlePropertyGet("Font").OlePropertySet("size",28); range.OlePropertyGet("Cells").OlePropertyGet("Font").OlePropertySet("Color",  RGB(0,0,255));  其中参数的设置:  Font---Name : "隶书" //字体名称  ----Size : 12 //字体大小  ----Color : RGB(*,*,*) //颜色  -----Underline : true/false //下划线  -----Italic: true/false //斜体  (6)单元格的合并:  (a) range1=sheet.OlePropertyGet("Range", "A1:A2"); //A1和A2单元格合并  (b) AnsiString Str="A"+IntToStr(j)+":"+"C"+IntToStr(j);  range1=sheet.OlePropertyGet("Range",Str); //可以用变量控制单元格合并  range1.OleFunction("Merge" , false);  (7)赋值语句:  (a):指定单元格赋值  sheet.OlePropertyGet("Cells",3,6).OlePropertySet("Value",str);  sheet.OlePropertyGet("Cells",j,1).OlePropertySet("Value","共查到记录:"+IntToStr(j-6));  (b):所选区域单元格赋值  range.OlePropertyGet("Cells").OlePropertySet("Value",10);  (c):所选区域行赋值  range.OlePropertyGet("Rows",1).OlePropertySet("Value",1234);  (d):工作表列赋值  sheet.OlePropertyGet("Columns",1).OlePropertySet("Value",1234);  (8)取值语句:  AnsiString abc=sheet.OlePropertyGet("Cells",120,1).OlePropertyGet("Value");  (9)区域选择:  range.OlePropertyGet("Cells").OleFunction("Select");  (10)窗口属性:  (a)显示属性  ex.OlePropertySet("Windowstate",3); //最大化显示  参数 1---------xlNormal //正常显示  2---------xlMinimized //最小化显示  3---------xlMaximized //最大化显示  (b)状态栏属性  ex.OlePropertySet ("StatusBar","您好,请您稍等。正在查询!");  ex.OlePropertySet ("StatusBar", false); //还原成默认值  (c)标题属性:  ex.OlePropertySet("Caption","查询系统"); 
yedezhanghao
关注
关注
点赞
收藏
评论
最全的OLE操作Excel的完整代码(2)
/*-------------------------------------------------//目前真正最全的OLE操作Excel的完整代码//版本:2007.01.15.01//C++Builder专家组www.3322ee.com原创文章//转载请保留本版权信息,谢谢合作-----------------------------------------------
复制链接
扫一扫
专栏目录
调用EXCEL 用OLE操作Excel
04-27
BCB 调用EXCEL
用OLE操作Excel(目前最全的资料)(04.2.19更新)
本文档部分资料来自互联网,大部分是ccrun(老妖)在Excel中通过录制宏-->察看宏代码-->转为CB代码而来.本文档不断更新中.欢迎大家关注.
excel OLE控件操作
10-18
excel OLE控件操作
典型的几个操作办法
参与评论
您还未登录,请先
登录
后发表或查看评论
SAP EXCEL OLE常用方法和属性
最新发布
sap_abap_kang的博客
11-30
12
OLE
Word 弹窗:Word正在等待OLE操作完成
xxyglz的博客
11-08
932
“Word正在等待OLE操作完成”解决方法
使用OLE自动化方式操作Excel表格
09-17
使用OLE自动化方式操作Excel表格
用OLE操作Excel资料
Johnny的专栏
11-08
3102
要在应用程序中控制Excel的运行,首先必须在编制自动化客户程序时包含Comobj.hpp#include "Comobj.hpp"C++ Builder把Excel自动化对象的功能包装在下面的四个Ole Object Class函数中,应用人员可以很方便地进行调用。设置对象属性:void OlePropertySet(属性名,参数……);获得对象属性:Var
OLE操作EXCEL
ABAPer ZeroLi
01-29
5239
最近知道了OLE这个概念, 打算学习学习
新建excel, 改变字体颜色, 填充单元格颜色; 下面两段代码效果一样
代码1
PARAMETERS: pr_xls(64) TYPE c DEFAULT 'D:\ZEROTEST.XLS'.
INCLUDE ole2incl.
DATA: excel TYPE ole2_object,
workbook TY
BCB用OLE操作Excel(目前最全的资料)
lcfeng1982的专栏
10-29
8511
本文档部分资料来自互联网,大部分是ccrun(老妖)在Excel中通过录制宏-->察看宏代码-->转为CB代码而来.本文档不断更新中.欢迎大家关注.
要在应用程序中控制Excel的运行,首先必须在编制自动化客户程序时包含Comobj.hpp
#include "Comobj.hpp"
C++ Builder把Excel自动化对象的功能包装在下面的四个Ole Object Clas
最全的OLE操作Excel的完整代码(1)
yedezhanghao的专栏
04-16
3542
最全的OLE操作Excel的完整代码(转载) - [技术文档]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://wsqj.blogbus.com/logs/32271364.html
#include
#include "Excel_2K_SRVR.h"
//#include "ComObj.hpp"
/*------------------
用OLE操作Excel
wyfwx的专栏
10-19
1441
本文部分转自 C++Builder 研究 - http://www.ccrun.com/article/go.asp?i=529&d=0iezy5
要在应用程序中控制Excel的运行,首先必须在编制自动化客户程序时包含Comobj.hpp
#include "Comobj.hpp"
C++ Builder把Excel自动化对象的功能包装在下面的四个Ole Object Class函
office中的OLE操作和问题
weixin_34310785的博客
10-15
2121
1.OLE:对象嵌入与链接.是微软的一种数据交换方式.2.在Office系列软件中都可进行OLE,即将另套软件的数据链入本套软件中.譬如,Excel中的工作表作为一个对象用OLE到Word中,在Word中可显示EXCEL的工作表,还可以通过编辑命令启用EXCEL对其进行编辑,3.操作方法是:插入-->对象偶尔有出现要编辑时,无法打开和编辑的问题,目前无解。1.使用WPS...
VS2010通过OLE操作Excel2010
热门推荐
superbfly的专栏
01-09
1万+
我使用的语言是C++,网上有许多这方面的例子,但由于VS与Office版本的问题,都需要一些调整,下面是我在使用时遇到的一些问题集解决方法:
操作步骤:
a. project->add class->MFC class from typelib 导入Excel.exe,一般都在C:/Program Files/Microsoft Office/Office14路径下;
b. 选中
java学习----------------------简单java类
amuist_ting的博客
06-12
150
关于java的学习记录:1./** * 新建一个雇员类,里面包含有雇员编号、姓名、职位、基本工资、佣金 * 这中功能的类在开发中被称为简单java类,因为这些类里面不会有过于复杂的 * 程序逻辑 * 对于简单java类而言,那么现在可以给出它的第一种开发形式: * 1.类名称必须存在有意义,例如:Book、Emp * 2.类之中 的属性必须private封装,封装后的属性必须提供setter、ge...
用OLE操作Excel(目前最全的资料)
jlfw的专栏
04-24
967
问题:比如数据库中ID150的记录被误操作删除,如何将该记录进行恢复?1)ID号码仍为1502)ID的类型为“自动编号”回答:可以复原,首先备份数据库,然后用ddl语句 Alter修改,不过你要知道这条数据的所有信息。 步骤如下:1、首先,记录下自动编号的最后一个号码,现在比如是100002、然后建立一个查询执行以下语句ALTER TABLE tableName ALTER COLUMN [AutoNumberFieldName] COUNTER (150, 1)3、然后用insert 插入原来的 150
在C++ Builder中用Ole控制Excel表
键者天行
07-31
7713
笔者在实际工作中经常用Excel表做数据报表,大多数表格的数据都要从数据库中读取,这样我就用C++Builder做了一个报表程序,方便了很多,现在把它共享给C++Builder爱好者们,就算为丰富C++Builder的文档资料做点事情吧。  首先把Excel报表文件保存到一个指定目录下,最好放在可执行程序的子目录下,作为模板文件。可以把报表标题、表头等设置好。这里是保存在trpt子目录下。  然后
Delphi 导出、导入Excel的一个快速方法
lcfeng1982的专栏
02-13
6290
The quickest way is to use an array of Variant,and just pass the entire array to Excel:
var
xls, wb, Range: OLEVariant;
arrData: Variant;
RowCount, ColCount, i, j:
Integer;
begin
在C++Builder中使用OLE出现“类worksheet的paste方法无效”错误的一种解决方法
CB爱好者记事本
10-24
2638
在C++Builder中使用OLE的方式把数据库表中(TDBGrid)的内容保存到Excel的学习过程中,跟“ccrun(老妖) info@ccrun.com”学习了很多(致敬ccrun(老妖))。
后来增加了把TStringList中的内容保存到Excel,重复向每个cell填充,这个方法的缺点是太慢。也可以一次填充一行(未实现)。下面是示意代码:
System::Variant vExcelApp;
System::Variant vSheet;
String strXlsFil...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:大白
设计师:CSDN官方博客
返回首页
yedezhanghao
CSDN认证博客专家
CSDN认证企业博客
码龄12年
暂无认证
原创
26万+
周排名
179万+
总排名
13万+
访问
等级
1324
积分
14
粉丝
28
获赞
评论
31
收藏
私信
关注
热门文章
SVN中检出(check out) 和 导出(export) 的区别
45567
全局钩子 实例(不使用DLL和使用DLL两种)
10319
C++Builder 中的 Format 函数及其用法。
9257
BCB中的文件操作
8171
最全的OLE操作Excel的完整代码(2)
5412
分类专栏
SVN
2篇
XML
3篇
BCB
4篇
Linux
2篇
最新评论
最全的OLE操作Excel的完整代码(2)
m0_68358541:
大哥,你这个www.3322ee.com给我整不会了
计算机寄存器分类
sillythousand:
b( ̄▽ ̄)d
计算机寄存器分类
H4ckTt:
SVN中检出(check out) 和 导出(export) 的区别
dongbingliu:
理解了,checkout 出来的版本与svn有着关联,但export出来的版本与svn 没有关联
SVN中检出(check out) 和 导出(export) 的区别
__lhy:
早点看到就好
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
技术经验分享——给还在迷茫中的程序猿
高手给菜鸟学习Linux的10个建议
LINUX的困难
2012年19篇
2011年32篇
目录
目录
分类专栏
SVN
2篇
XML
3篇
BCB
4篇
Linux
2篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值