如题
解决方案 »
- 自定义事件不能是其他单元的过程吗?
- 从StringGrid中取数据,用QuickReport控件做报表出现了奇怪的问题!各位帮忙看看是怎么回事!
- 散分......散分........(小小)
- 帮忙啦
- 如何按回车打开combobox菜单呢?
- *************如何通过截获消息实现如下功能************
- oracle 数据库连接
- 如何拦截API?
- 用DELPHI6把“仓管系统”从单机版(paradox)修改成局域网版(SQL SERVER 7.0):
- 注意!CSDN下载中心里的“恋爱小女生之天生尤物”内有木马!!!(转帖)
- 怎么实现delphi和数据库之间图片的转换,保存,显示
- 简单问题抢分了,在线等答案
OpenDialog1:TOpenDialog;
ExcelApp:Variant;
expath,str:String;
ExCountRow,ExCountCol:integer;
begin
OpenDialog1:=TOpenDialog.Create(Application);
with OpenDialog1 do
begin
Title:='xls選擇';
Filter:='Excel File(*.xls)|*.xls';
DefaultExt:='*.xls';
end;
if OpenDialog1.Execute then
begin
expath:=opendialog1.FileName;
opendialog1.Free;
opendialog1:=nil;
application.ProcessMessages;
try
Screen.Cursor:=crhourglass;
ExcelApp:=CreateOleObject('excel.application');
ExcelApp.visible:=false;
ExcelApp.workbooks.open(expath);
ExCountRow:=0;
while not(length(ExcelApp.cells[ExCountRow+1,1])=0) do
begin
Inc(ExCountRow);
end; ExCountCol:=0;
while not(length(ExcelApp.cells[1,ExCountCol+1])=0) do
begin
Inc(ExCountCol);
end;
strngrd1.RowCount:=ExCountRow+1;
for i:=1 to strngrd1.RowCount do
begin
for j:=1 to strngrd1.ColCount do
begin
strngrd1.Cells[j,i]:=ExcelApp.cells[i+1,j].value;
end;
end; ExcelApp.workbooks.close;
Excelapp.quit;
screen.Cursor:=crdefault;
finally
ExcelApp.workbooks.close;
Excelapp.quit;
screen.Cursor:=crdefault;
end;