那位高手知道如何实现用Delphi查询Excel文件中的数据? 例如我要得到Excel文件中数据"245"所在的行与列,不知能否实现?另外能否统计Excel文件的记录条数?请各位指教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我的思路是:在delphi中创建一个EXCEL实例,再使用EXCEL对象模型的方法,找到指定的数据,并选中,根据选中的内容取得他所在的行与列具体的方法可以在宏编辑器中试。我只写以下伪代码:varexcel as variant;beginexcel:=CreateOleObject('Excel.Application');excel.open('excel文件名');excel.workbooks.sheets(1).find.text='245';excel.workbooks.sheets(1).find.execute;row:=excel.workbooks.sheets(1).selection.range.row;con:=excel.workbooks.sheets(1).selection.range.colomn;end;重申一下:EXCEL的具体方法可以在宏编辑器中试,如果还有问题,可以回信:[email protected] yuanzhouhang你的代码我试过了,可不知道为何有错误呢?请调试一下再写如何? 我加上了!代码如下:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,ComObj, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; ExcelApp: Variant;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);beginExcelApp := CreateOleObject( 'Excel.Application' );ExcelApp.WorkBooks.Open( 'D:\Demo.xls');ExcelApp.workbooks.sheets(1).find.text:='bbb';ExcelApp.workbooks.sheets(1).find.execute;form1.Caption:=inttostr(ExcelApp.workbooks.sheets(1).selection.range.row);ExcelApp.WorkBooks.Close;ExcelApp.Quit;end;end. 上面的代码总是到"ExcelApp.workbooks.sheets(1).find.text:='bbb';"出现错误!为什么??? IWDbGrid 如何修改里面的值 多年没来Delphi版发贴了, 散分(三). 问一个B/S程序访问的问题 ,请赐教 请问怎样判断dbgrid里的纪录被选中了? 那位朋友可以提供coderush for6.0给我下载 在网上实时传播声音数据用什么协议比较好? 急急急急急急急急!!!!???————在线等待???!!! 報表高手請進來,如何設置報表的紙張為a4橫向, 简单的问题,HELP 动态创建表格的问题 这样的异常错误,怎么捕获? 怎样显示出它的错误码? 详见内容。 谢谢 大家响应下号召,推荐下我们版的精华帖啦~!谢啦谢啦~!
在delphi中创建一个EXCEL实例,再使用EXCEL对象模型的方法,找到指定的数据,并选中,根据选中的内容取得他所在的行与列
具体的方法可以在宏编辑器中试。我只写以下伪代码:
var
excel as variant;
begin
excel:=CreateOleObject('Excel.Application');
excel.open('excel文件名');
excel.workbooks.sheets(1).find.text='245';
excel.workbooks.sheets(1).find.execute;
row:=excel.workbooks.sheets(1).selection.range.row;
con:=excel.workbooks.sheets(1).selection.range.colomn;end;
重申一下:EXCEL的具体方法可以在宏编辑器中试,
如果还有问题,可以回信:[email protected]
代码如下:
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComObj, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
ExcelApp: Variant;
implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
ExcelApp := CreateOleObject( 'Excel.Application' );
ExcelApp.WorkBooks.Open( 'D:\Demo.xls');
ExcelApp.workbooks.sheets(1).find.text:='bbb';
ExcelApp.workbooks.sheets(1).find.execute;
form1.Caption:=inttostr(ExcelApp.workbooks.sheets(1).selection.range.row);
ExcelApp.WorkBooks.Close;
ExcelApp.Quit;
end;end.