社区
数据库及相关技术
帖子详情
在BCB中如何获得Excel文件中的表名?
gxd305
2005-09-22 05:13:23
在BCB中如何获得Excel表格中的表名?
具体的方法怎么样的?
有没有相关的代码?
先谢谢了
...全文
189
5
打赏
收藏
在BCB中如何获得Excel文件中的表名?
在BCB中如何获得Excel表格中的表名? 具体的方法怎么样的? 有没有相关的代码? 先谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gxd305
2005-09-22
打赏
举报
回复
谢谢了
ccrun
知道你很强,也常到www.ccrun.com去淘宝。
谢谢了
ccrun.com
2005-09-22
打赏
举报
回复
你用ADO?呵呵,早说嘛。
String strXlsFile = "C:\\ccrun\\123.xls";
String strSQL = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"
"Mode=Share Deny None;Extended Properties=Excel 8.0;"
"Persist Security Info=False;"
"Jet OLEDB:System database=\"\";"
"Jet OLEDB:Registry Path=\"\";"
"Jet OLEDB:Database Password=\"\";"
"Jet OLEDB:Engine Type=35;"
"Jet OLEDB:Database Locking Mode=0;"
"Jet OLEDB:Global Partial Bulk Ops=2;"
"Jet OLEDB:Global Bulk Transactions=1;"
"Jet OLEDB:New Database Password="";"
"Jet OLEDB:Create System Database=False;"
"Jet OLEDB:Encrypt Database=False;"
"Jet OLEDB:Don''t Copy Locale on Compact=False;"
"Jet OLEDB:Compact Without Replica Repair=False;"
"Jet OLEDB:SFP=False;";
strSQL += String("Data Source=\"") + strXlsFile + String("\"");
ADOConnection1->ConnectionString = strSQL;
ADOConnection1->Connected; // 连接
TStringList *pTables = new TStringList;
// 取回的表名集,也就是Excel的Sheet名集
ADOConnection1->GetTableNames(pTables);
for(int i=0; i<pTables->Count; i++)
{
// 依次取出Sheet名称
ShowMessage(pTables->Strings[i]);
}
delete pTables;
gxd305
2005-09-22
打赏
举报
回复
首先谢谢上面的两位
但是我的问题还没有解决呀
我现在是想获得Excel文件中的表名,我在操作的时候用的是,ADO,需要知道表名,
而下面的这个 只能是选择某的表 并且用的是OLE
◎ 选择选择工作表中第一个工作表
Workbook1.PG("Sheets", 1).PR("Select");
Sheet1 = Workbook1.PG("ActiveSheet");
◎ 重命名工作表
Sheet1.PS("Name", "Sheet的新名字");--------------------这儿的Name如何取得? 这是我的问题,那Sheet1有没有可以获得它指向表名称的方法或者属性?
◎ 当前工作簿中的工作表总数
int nSheetCount=Workbook1.PG("Sheets").PG("Count");
contra_plus
2005-09-22
打赏
举报
回复
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","查询系统");
ccrun.com
2005-09-22
打赏
举报
回复
http://ccrun.com/article/go.asp?i=529&d=0iezy5
如何用
BCB
打开
EXCEL
文件
C++Builder是Borland公司继Delphi之后又一成功的产品,她集VB、VC++ 及 Delphi 的优点于一体而深得C语言爱好者的青睐。由于多数操作者爱用 MicroSoft公司的
Excel
组织数据,为此本文介绍了用C++Builder存取
Excel
文件
的两种方法。 一.用OLE技术操纵
Excel
BCB
操作
Excel
附注:原作者/整理者 ccrun
要在应用程序
中
控制
Excel
的运行,首先必须在编制自动化客户程序时包含Comobj.hpp
#include "Comobj.hpp"
C++ Builder把
Excel
自动化对象的功能包装在下面的四个Ole Object Class函数
中
,应用人员可以很方便地进行调用。
设置
通过SQL语句直接实现
Excel
与数据库的导入导出
通过SQL语句直接实现
Excel
与数据库的导入导出 1、在SQL数据库
中
直接从
Excel
里面查询数据: select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'
Excel
5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$) 2、从E
SQL SERVER 和ACCESS/
excel
的数据导入导出
SQL SERVER 和ACCESS/
excel
的数据导入导出常规的数据导入导出: 使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤: 1)在SQL SERVER企业管理器
中
的Tools(工具)菜单上,选择Data Transformation 2)Services(数据转换服务),然后选择 czdImport Data(导入数据)。 3)在Choose
将数据库
中
的内容导入到
excel
发表于:2003-08-05 11:53:59 请问用
BCB
怎么实现SQL2000的数据导出到
Excel
里面呢?还有类似将
Excel
里的数据导入到数据库
中
呢? 对我有用[0]丢个板砖[0]
数据库及相关技术
1,178
社区成员
18,939
社区内容
发帖
与我相关
我的任务
数据库及相关技术
C++ Builder 数据库及相关技术
复制链接
扫一扫
分享
社区描述
C++ Builder 数据库及相关技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章