unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, XLSReadWriteII2, StdCtrls, XLSUtils2;

type

  TForm1 = class(TForm)

    aXlsObj: TXLSReadWriteII2;

    Button1: TButton;

    aSaveDialog: TSaveDialog;

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var

  i, j: Integer;

  aFileName, aStampTime: AnsiString;

  aa: TFormulaValue;

begin

  try

    aSaveDialog.InitialDir := ExtractFilePath(ParamStr(0));

    aSaveDialog.DefaultExt := 'xls';

    aSaveDialog.Filter := 'Excel文件(*.xls)|*.xls';

    aStampTime := FormatDateTime('yyyymmddhhnnss', Now);

    aSaveDialog.FileName := aStampTime;

    if not aSaveDialog.Execute then

      Exit;

    aFileName := aSaveDialog.FileName;

    if aFileName = '' then

      Exit;

  finally

  end;

  try

    aXlsObj.Sheets[0].AsWideString[0, 0] := 'id';

    aXlsObj.Sheets[0].AsWideString[1, 0] := 'formula';

    aXlsObj.Sheets[0].AsWideString[2, 0] := 'lie1';

    aXlsObj.Sheets[0].AsWideString[3, 0] := 'lie2';

    for i:=1 to 10 do

    begin

      aXlsObj.Sheets[0].AsWideString[0, i] := Format('%d', [i+1]);

      aXlsObj.Sheets[0].AsFormula[1, i] := Format('C%d + D%d', [i+1, i+1]);

      aXlsObj.Sheets[0].AsFloat[2, i] := ( i * 5);

      aXlsObj.Sheets[0].AsFloat[3, i] := ( i * 4);

    end;

    for i:=1 to 10 do

    begin

      aa := aXlsObj.Sheets[0].AsFormulaValue[1 ,i];

      case aa.ValType of

        fvFloat:   ShowMessage(FloatToStr(aa.vFloat));

      end;

    end;

    aXlsObj.Filename := aFileName;

    aXlsObj.Write;

    ShowMessage(Format('导出文件'+#13#10+'%s'+#13#10 +'成功!', [aFileName]));

  finally

  end;

end;

end.

  

最新文章

  1. 亚马逊云服务器VPS Amazon EC2 免费VPS主机配置CentOS及其它内容
  2. Linux 文件描述符和重定向
  3. [LeetCode] Simplify Path(可以不用看)
  4. Cocos2dx老版本适配64位
  5. MySQL选择数据库use与mysql_select_db使用详解
  6. Codeforces Round #349 (Div. 2) D. World Tour (最短路)
  7. UVa 725暴力求解
  8. [Windows Phone] 实作不同的地图显示模式
  9. WebForm和MVC中都可以使用的路由
  10. Android studio - Failed to find target android-18
  11. 【一天一道LeetCode】#19. Remove Nth Node From End of List
  12. Salesforce Lightning开发学习(二)Component组件开发实践
  13. js二分算法排序
  14. golang与vscode的安装与配置
  15. ogg12.2中的新参数 AllowOutputDir
  16. sql-server安装
  17. JAVAEE——宜立方商城10:使用freemarker实现网页静态化、ActiveMq同步生成静态网页、Sso单点登录系统分析
  18. minic 类型声明与变量定义句型处理
  19. wire_format.cc:1091] String field 'accountid' contains invalid UTF-8 data when serializing a protocol buffer. Use the 'bytes' type if you intend to send raw bytes.
  20. 分布式缓存系统 Memcached 主线程之main函数

热门文章

  1. python爬虫挂代理
  2. 剑指Offer 25. 复杂链表的复制 (链表)
  3. Ubuntu16.04 用Nomachine进行远程控制的配置
  4. Open Nginx gzip
  5. es6学习日记2
  6. C# 利用反射完成计算器可扩展功能
  7. 使用golang 编写postgresql 扩展
  8. 浅析rune数据类型
  9. ASP.NET Core 2.0系列学习笔记-NLog日志配置文件
  10. 一个基于typelist的typemap