DELPHI中控制EXCEL的一个例子

本文介绍了一种使用Delphi创建应用程序的方法,该程序能够打开、修改并保存Excel文件。通过具体的代码示例,展示了如何利用OLE对象实现这些功能,包括打开指定的Excel模板、保存为新的Excel文件以及在Excel中添加数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. unit Unit1;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   StdCtrls, ComObj;
  6. type
  7.   TForm1 = class(TForm)
  8.     Button1: TButton;
  9.     Button2: TButton;
  10.     Button3: TButton;
  11.     procedure Button1Click(Sender: TObject);
  12.     procedure Button2Click(Sender: TObject);
  13.     procedure Button3Click(Sender: TObject);
  14.   private
  15.     { Private declarations }
  16.     ExcelApp: Variant;
  17.   public
  18.     { Public declarations }
  19.   end;
  20. var
  21.   Form1: TForm1;
  22. implementation
  23. {$R *.DFM}
  24. procedure TForm1.Button1Click(Sender: TObject);
  25. var
  26.     Path: string;
  27. begin
  28.     Path := ExtractFilePath(Application.exeName);
  29.     if copy(Path, length(Path) ,1) <> '/' then
  30.         Path := Path + '/';
  31.     ExcelApp := CreateOleObject('Excel.Application');
  32.     ExcelApp.WorkBooks.Open(Path+'Book2.xlt');
  33.     Button1.Enabled := False;
  34.     Button2.Enabled := True;
  35.     Button3.Enabled := True;
  36. end;
  37. procedure TForm1.Button2Click(Sender: TObject);
  38. var
  39.     Path: string;
  40. begin
  41.     try
  42.       Path := ExtractFilePath(Application.exeName);
  43.       if copy(Path, length(Path) ,1) <> '/' then
  44.           Path := Path + '/';
  45.       ExcelApp.WOrkBooks[1].SaveAs(Path+'test.xls');
  46.     finally
  47.       Button1.Enabled := True;
  48.       Button2.Enabled := False;
  49.       Button3.Enabled := False;
  50.       ExcelApp.WOrkBooks.Close;
  51.       ExcelApp.Quit;
  52.     end;
  53. end;
  54. procedure TForm1.Button3Click(Sender: TObject);
  55. var
  56.   Book: Variant;
  57.   Sheet: Variant;
  58.   AfterSheet: Variant;
  59. begin
  60.   Book := ExcelApp.WorkBooks[1];
  61.   AfterSheet := Book.WorkSheets[3];
  62.   Sheet := Book.WorkSheets.Add(EmptyParam, AfterSheet, 1);
  63.   //Sheet.move(Book.WorkSheets[4],
  64.   //Sheet := Book.WorkSheets[1];
  65.   Sheet.Activate;
  66.   ExcelApp.Cells[3,1] := 'TEST';
  67. end;
  68. end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值