社区
数据库相关
帖子详情
求DBGridEh 导出excel函数
wgxis
2009-04-29 02:58:40
1、自己用过,确实没问题的,可在office2000、office2003的电脑上正常导出
2、有弹出保存,可选择保存位置
3、带进度条
请教了,最好是那种函数调用的形势,谢谢
...全文
218
7
打赏
收藏
求DBGridEh 导出excel函数
1、自己用过,确实没问题的,可在office2000、office2003的电脑上正常导出 2、有弹出保存,可选择保存位置 3、带进度条 请教了,最好是那种函数调用的形势,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chailang
2009-05-04
打赏
举报
回复
dlgSave1.Execute;
if dlgSave1.FileName = '' then
Exit
else
SaveDBGridEhToExportFile(TDBGridEhExportAsText, dbgrdh1,
dlgSave1.FileName, True);
引用EhlibADO, EhLibBDE单元即可
fx270981245
2009-04-30
打赏
举报
回复
up
hiboys
2009-04-30
打赏
举报
回复
DBGridEh中有专门的控件支持。我们项目用过的
关联到dbgrideh上即可。
wgxis
2009-04-29
打赏
举报
回复
继续问
delphi_911
2009-04-29
打赏
举报
回复
最好用数据流,要不然数据量稍大时导出速度会很慢;
如果是绑定数据源的话从数据源直接导出也是不错的选择。
Rainy_mimi
2009-04-29
打赏
举报
回复
進度條自己+個控件就OK了啊
ProgressBar1
ProgressBar1.Min := 0;
ProgressBar1.Max := ADtSet.RecordCount;
...
ProgressBar1.Position := i; //當前 ADtSet的循環變量值
Rainy_mimi
2009-04-29
打赏
举报
回复
procedure TDataManageFrm.MailDataExport(ADtset: TDtset;
ADBGrid: TDBGrid);
var
ExcelApp: Variant;
SaveFileDialog: TSaveDialog;
SaveToFile: string;
i, j: integer;
begin
if (not ADtset.Active) or (ADtset.RecordCount = 0) then Exit;
SaveToFile := '';
SaveFileDialog := TSaveDialog.Create(Application);
SaveFileDialog.Filter := '*.xls|*.xls';
if SaveFileDialog.Execute then
SaveToFile := SaveFileDialog.FileName;
if SaveToFile = '' then
exit;
screen.Cursor := crHourGlass;
try
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.WorkBooks.Add;
ExcelApp.WorkSheets[1].Activate;
ExcelApp.ActiveSheet.Rows[1].RowHeight := 30;
for j := 0 to ADtset.FieldCount - 1 do
begin
ExcelApp.Cells[1, j + 1].Value := ADBGrid.Columns[j].Title.Caption;
end;
ADtset.First;
for i := 0 to ADtset.RecordCount - 1 do
begin
for j := 0 to ADtset.FieldCount - 1 do
begin
ExcelApp.Cells[i + 2, j + 1].Value := '''' + ADtset.FieldByName(ADBGrid.Columns[j].FieldName).AsString;
ExcelApp.ActiveSheet.Columns[j + 1].ColumnWidth := 15;
end;
ADtset.Next;
end;
finally
try
ExcelApp.ActiveWorkBook.SaveAs(SaveToFile);
ExcelApp.ActiveWorkBook.saved := true;
ExcelApp.visible := true;
except on e: exception do
begin
MessageDlg(e.Message, mtInformation, [mbok], 0);
ExcelApp.ActiveWorkBook.saved := false;
end;
end;
end;
screen.Cursor := CrDefault;
end;
DB
Grid
Eh
导出
到
EXCEL
函数
DB
Grid
Eh
导出
到
EXCEL
函数
,能
导出
多表头
db
grid
eh
快速
导出
excel
采用BIFF8规发二进制
导出
写
Excel
文件的绿色
函数
,速度爆快. 收藏 //采用BIFF8格式规范二进制流写入XLS文件 function TsycFunctionSet.sycExportDateTo
Excel
(ASender: T
DB
Grid
): Boolean; var arXlsBegin: array[0..5] of Word ; var arXlsEnd: array[0..1]
DB
Grid
Eh
输出
EXCEL
的方法
//方法一调用
DB
GRID
的
函数
#include "
DB
Grid
Eh
ImpExp.hpp"void __fastcall TfrmViewReport::cmdSaveAsClick(TObject *Sender){/**************************************************************
函数
名:cmdSaveAsClick(TO
delphi将
DB
GRID
数据
导出
到
EXCEL
表中
先在USES中添加Comobj {功能描述:把
DB
Grid
输出到
Excel
表格(支持多Sheet)调用格式:Copy
Db
DataTo
Excel
([
DB
Grid
1,
DB
Grid
2]);} procedure Copy
Db
DataTo
Excel
(Args: array of const);var iCount, jCount: Integer; XLApp: Variant; Sheet:...
Eh
lib 的
DB
Grid
Eh
控件
导出
到
Excel
的三种封装过程/
函数
必须uses
DB
Grid
Eh
ImpExp,
Eh
libADO,
DB
Grid
Eh
第一种: procedure TForm2.
db
grid
eh
toexp(ls
db
grid
eh
: t
db
grid
eh
; Title: string); //ls
db
grid
eh
传入
db
grid
eh
变量;Title保存标题 var ExpClass: T
DB
Grid
Eh
ExportClass;
数据库相关
2,497
社区成员
88,445
社区内容
发帖
与我相关
我的任务
数据库相关
Delphi 数据库相关
复制链接
扫一扫
分享
社区描述
Delphi 数据库相关
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章