Var
FExcel:OleVariant; //excel应用程序
FWorkBook :OleVariant; //工作表
Temsheet:OleVariant; //工作薄
FPicture:OleVariant;//图片
tmpstr:String;
range:variant;//范围
i,j,TemInt:integer;
TemFileName:String;
real_american_price:Double;
begin
if (kind = '小米清单') or (kind = '小商品清单') then
Begin
if cxxiaomilist.DataController.RecordCount = then
begin
Application.MessageBox(PChar('没有导出数据!'),'提示',MB_OK + MB_ICONWARNING);
abort;
end; SaveDialog1.Filter:='.xlsx';
if SaveDialog1.Execute then
begin
TemFileName:=SaveDialog1.FileName+'.xlsx'; Screen.Cursor:=CrHourGlass;
TemInt:=;
try
FExcel:= CreateoleObject('excel.Application');
FWorkBook:=FExcel.WorkBooks.Add(-); //新的工作表
Temsheet:=FWorkBook.Worksheets.Add;
Temsheet.Name:=kind;
except
Application.MessageBox('无法创建Excel文件, 请确认是否安装了Excel软件',
PChar(Application.Title), MB_OK + MB_ICONWarning);
Exit;
end; Temsheet.Select;
Temsheet.Range['A1','A1'].RowHeight := ; for i := to do
begin
Temsheet.Columns[i].ColumnWidth:=;
Temsheet.cells[,i] := '';
if i = then
Temsheet.cells[,i] := cxxiaomilist.Bands[].Caption;
if i = then
Temsheet.cells[,i] := cxxiaomilist.Bands[].Caption;
Temsheet.cells[,i] := cxxiaomilist.Bands[i-].Caption;
////////////////////////////////////////////////////////////
if i < then
Temsheet.cells[,i] := cxxiaomilist.Columns[i-].Caption;
end;
Temsheet.Columns[].NumberFormat:='#####################'; range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
Temsheet.Cells[,].HorizontalAlignment:=-; //字居中
Temsheet.Cells[,] := cxxiaomilist.Bands[ + ].Caption; range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
Temsheet.Cells[,].HorizontalAlignment:=-; //字居中
Temsheet.Cells[,] := cxxiaomilist.Bands[ + ].Caption; range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
range:=Temsheet.Range[Temsheet.cells[,],Temsheet.cells[,]];//选定表格
range.select;
range.merge;
Temsheet.Cells[,].HorizontalAlignment:=-; //字居中
Temsheet.Cells[,] := cxxiaomilist.Bands[ + ].Caption; for I := to cxxiaomilist.DataController.RecordCount - do
begin
for j := to cxxiaomilist.ColumnCount do
begin
Temsheet.cells[ + i,j] := VarToStr(cxxiaomilist.DataController.GetValue(i,j-));
// if j = 10 then
// if TryStrToFloat(VarToStr(cxxiaomilist.DataController.GetValue(i,j)),real_american_price) then
// if real_american_price > 150 then
// begin
// Temsheet.Cells[4 + i,j].Interior.Color := clRed;
// Temsheet.Cells[4 + i,j + 4].Interior.Color := $0075C76B;
// end;
end;
end; // for i:=0 to DBGrid2.Columns.Count - 1 do
// begin
// Temsheet.Cells[TemInt,i+2]:=DBGrid2.Columns[i].Title.Caption;
// Temsheet.Cells[TemInt,i+2].HorizontalAlignment:=-4108; //字居中
// Temsheet.Cells[TemInt,i+2].Interior.Color:=clGray; //单元格背景色
// range:=Temsheet.Range[Temsheet.cells[TemInt,i+2],Temsheet.cells[TemInt,i+2]];//选定表格
// range.borders.linestyle:=1;//华线
// end;
//
// TemInt:=TemInt+1;
// //////////////////////////////////////////////
// j:=0;
// DBGrid2.DataSource.DataSet.First;
// while not DBGrid2.DataSource.DataSet.Eof do
// begin
// Temsheet.Cells[TemInt+j,1].Value:=j+1;
// Temsheet.Cells[TemInt+j,1].HorizontalAlignment:=-4108; //字居中
// range:=Temsheet.Range[Temsheet.cells[TemInt+j,1],Temsheet.cells[TemInt+j,1]];//选定表格
// range.borders.linestyle:=1;//华线
//
// for i:=0 to DBGrid2.Columns.Count - 1 do
// begin
// Temsheet.Cells[TemInt+j,i+2].Value:=DBGrid2.Fields[i].AsString;
// range:=Temsheet.Range[Temsheet.cells[TemInt+j,i+2],Temsheet.cells[TemInt+j,i+2]];//选定表格
// range.borders.linestyle:=1;//华线
// end;
// DBGrid2.DataSource.DataSet.Next;
// j:=j+1;
// end; Application.ProcessMessages; Screen.Cursor:=CrDefault;
FExcel.WorkBooks[].saveas(TemFileName);//保存文件
FExcel.workbooks[].close; //关闭工作表
Application.ProcessMessages;
MessageBox(Handle,'导出成功','提示',MB_OK);
//FExcel.visible:=true;
FExcel.quit; //关闭Excel
FExcel := unassigned;
//shellexecute(0,'open',PChar(ExtractFileName(TemFileName)),nil,PChar(ExtractFilePath(TemFileName)),SW_Show); end;
End;

delphi 导出excel的更多相关文章

  1. [转]Delphi导出Excel的设置操作

    procedure CreatRepSheet(SheetName:String;PageSize,PageLay:Integer); {新建Excel工作簿.进行页面设置} begin {新建Exc ...

  2. Delphi导出Excel的设置操作

    procedure CreatRepSheet(SheetName:String;PageSize,PageLay:Integer); {新建Excel工作簿.进行页面设置} begin {新建Exc ...

  3. delphi 导出到excel的7种方法

    本文来自 爱好者8888 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/kpc2000/article/details/17066823?utm_source=cop ...

  4. Delphi 导出数据至Excel的7种方法【转】

    一; delphi 快速导出excel   uses ComObj,clipbrd;   function ToExcel(sfilename:string; ADOQuery:TADOQuery): ...

  5. Delphi 导出数据至Excel的7种方法

    一; delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery):bool ...

  6. delphi 导出到excel的第1种方法

    第一种方法delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery):bo ...

  7. Delphi DBGridEh导出Excel

    unit Unit_DBGridEhToExcel; interface uses SysUtils, Variants, Classes, Graphics, Controls, Forms, Ex ...

  8. CxGrid导出Excel时清除颜色的设置

    CxGrid导出Excel时清除颜色的设置 (2011-04-25 16:33:23) 转载▼ 标签: it 分类: Delphi http://www.radxe.com/?p=170 cxgrid ...

  9. C#使用Aspose.Cells导出Excel简单实现

    首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://downloads.aspose.com/cells/net 将DataTable导出Xlsx格式的文件下载(网页输出) ...

随机推荐

  1. 分布式特点理解-Zookeeper准备

    分布式环境特点 分布性 地域,区域,机房,服务器不同导致分布性 并发性 程序运行中,并发性操作很常见,比如同一个分布式系统中的多个节点,同时访问一个共享资源(数据库,分布式存储) 无序性 进程之间的消 ...

  2. 清北学堂提高组突破营考试T1

    题目如下: (想要作弊的后几届神仙们我劝你们还是别黈了,这个题如果你们不会只能证明你们上错班了). 好,题目看完了,发现是一道大模拟(%你)题,于是我们按照题目说的做: #include<ios ...

  3. 手动升级 Confluence 6 - 升级 Confluence

    4. 备份 备份你的数据库,并且确定的你的数据库备份已经被正确的创建了.如果你的数据库不支持在线备份的话,你需要首先停止 Confluence 的运行. 备份你的 Confluence 安装目录(in ...

  4. Spring Boot教程(三十二)多数据源配置与使用

    之前在介绍使用JdbcTemplate和Spring-data-jpa时,都使用了单数据源.在单数据源的情况下,Spring Boot的配置非常简单,只需要在application.propertie ...

  5. 广工2017校赛-F-- tmk找三角

    http://gdutcode.sinaapp.com/problem.php?cid=1056&pid=5 Description 有一棵树,树上有只tmk.他在这棵树上生活了很久,对他的构 ...

  6. Apicloud_(项目)网上书城02_后端数据获取

    Apicloud_(项目)网上书城01_前端页面开发 传送门 Apicloud_(项目)网上书城02_后端数据获取 传送门 Apicloud_(项目)网上书城03_拓展模块实现 传送门 ApiClou ...

  7. ServletConfig接口

    ServletConfig接口 Servlet容器初始化Servlet对象时会为Servlet创建一个ServletConfig对象,在ServletConfig对象中包含了Servlet的初始化参数 ...

  8. sqli-labs(42)

    0x01 喔? 熟悉的界面? 注册一下 但是好像不行了 那我们只有 嘻嘻看看页面了 也是以失败告终的  那我们该怎么办  我们来看看源码 我们看见login的页面未对 password进行任何的过滤 ...

  9. Spring boot之使用freemarker

    大纲 (1)在pom.xml中引入freemarker; (2)如何关闭freemarker缓存 (3)编写模板文件.ftl (4)编写访问文件的controller 在pom.xml中引入freem ...

  10. Java并发编程的艺术笔记(四)——ThreadLocal的使用

    ThreadLocal,即线程变量,是一个以ThreadLocal对象为键.任意对象为值的存储结构.这个结构被附带在线程上,也就是说一个线程可以根据一个ThreadLocal对象查询到绑定在这个线程上 ...