解决方案 »
- 最近倒腾了一遍Delphi 的不同版本 6.0、7.0、2007、2009,大家使用不同版本有什么体会
- 关于随机字符串和随机数的问题
- idtcpserver的最大连接数问题.
- dbgrideh的过滤功能怎样查询值为null的内容啊???
- 模拟画面中的直线曲线应该怎么保存位置?大侠请进.
- 提问:有关DBGrid中记录的任意多行多列的复制
- Delphi5+BDE+Sybase12,对数据库进行操作,带有中文字符报错,怎么解决?
- 关于ADO?急!!
- 请问windows nt的屏幕锁定及解锁API是什么,怎么使用?
- 一个把其它位数填充为*的问题
- QueryInterface函数不解
- 求dbgrid修改的问题
case5166升的好快,
一个月就超过我了,后生可畏。。
老衲应该隐居找老尼了
procedure TForm1.Button1Click(Sender: TObject);
var
ExcelApp: Variant;
a,s,d:string;
i:integer;
begin
ExcelApp:=CreateOleObject('Excel.Application');
ExcelApp.WorkBooks.Open('d:\delphi\book1.xls');
a:=ExcelApp.Cells[2,1];
s:=ExcelApp.Cells[2,2];
d:=ExcelApp.Cells[2,3]; ListBox1.Items.add(a);
ListBox1.Items.add(s);
ListBox1.Items.add(d);
end;
uses
ExtCtrls,ComObj;
2、4楼的方法则是采用了EXCEL的OLE对象接口根据坐标来直接操作单元格,这种方法通用性强,不过也是一定要有EXCEL软件的运行环境才行
3、还有一种方法,就是直接解析EXCEL的文件格式,这种方法对运行环境没有要求,但实现较复杂,需要对EXCEL的各种格式版本(二进制、基于XML的、基于ZIP的)十分熟悉。最大的障碍是EXCEL的格式并不是完全开放的,因此在兼容性以及知识产权方面可能会有一些问题综上,EXCEL文件的操作建议第2种方法,最靠谱,最可靠