请高手现手,为晚辈解答一个采用SaveDialog控件把DBGrid中的记录输出到Excel中???
解决方案 »
- 程序怎么自动适应当前屏幕分辩率?
- 求delphi语句
- 求一Net风格的 TabControl 控件
- 今天我生日,女朋友晚上要来,怎么才能最浪漫地打动她,然后......
- 我的scktsrvr.exe在NT server上運行怎么會報錯?
- delphi怎么实现读取文件时间? 读出来的时间结构无法转换。
- 如何通过内网获得外网IP
- 有谁可以告知使用Delphi开发的为人所知的一些软件系统?
- 问问问:如何用Twebbrowser控件将打开的页面保存为mht格式?
- 我如何将一个表的字段名取出放入一个TStringList?
- interbase 创建服务器后再重新创建为什么总不行。
- ……完成了人生一件大事,散分……
var
i,j,FieldNum:integer;
begin
with Query do
begin
DisableControls;
fieldNum := dbgrid.fieldCount;
for i:=1 to fieldNum do //写表头
begin
ExcelApp.Cells[1,i]:=Fields[i-1].FieldName;
end;
first;
i:=2;
while not eof do
begin
for j:=1 to fieldNum do
begin
ExcelApp.Cells[i,j]:=fields[j-1].AsString;
end;
inc(i);
if (i mod 20)=0 then
ExcelApp.Cells[i+10,1].Activate;
next;
end;
EnableControls;
end;
end;
procedure Tf_Normal.ButtonClick(Sender: TObject);
var
ExcelApp: variant;
begin
application.ProcessMessages;
try
ExcelApp:=createoleobject('Excel.application');
except
messageDlg('请先安装MicroSoft Excel',mtError,[mbok],0);
exit;
end;
ExcelApp.Visible := True;
ExcelApp.Caption := '名字';
ExcelApp.WorkBooks.Add;
ExcelApp.WorkSheets[1].Activate;
ExcelApp.WorkSheets[1].name:='表名';
ExcelApp.ActiveSheet.Rows[1].Font.Bold:= True;
ExcelApp.Columns[1].NumberFormatLocal:='@';
ExportToExcel(DbGrid: TDBGrid; Query: TAdoQuery;ExcelApp:variant);
ExcelApp.WorkBooks.Close;
ExcelApp.Quit;
end;
begin
FileName:=SaveDialog1.FileName;
//下面把dbgrid的数据写到FileName中去;
end;
begin
FileName:=SaveDialog1.FileName;
//下面把dbgrid的数据写到FileName中去;
end;
下面把dbgrid的数据写到FileName中去????????
怎么写啊?
请给出相应的小例子给小辈参考一下啊?
怎么写啊?
请给出相应的小例子给小辈参考一下啊?///////////////////////////// jackie168(火星人) 兄不是已经给了代码了?
把代码粘贴过来
var
strSQL:string;
begin
if savedialog1.execute then
begin
try
strSQL:='select * into [Excel 8.0;database='+savedialog1.filename].[sheet6] from ORDERS';
ADOConnection1.Connected:=false;
ADOConnection1.Execute(strSQL);
showmessage('Successful');
ADOConnection1.Connected:=true;
except
on e:exception do
memo1.Text:=e.Message;
end;
end;
end;
提示这个有错误啊?
strSQL:='select * into [Excel 8.0;database='+savedialog1.filename].[sheet6] from ORDERS';