在Delphi中操作Excel,演示用Delphi創建一個XLS文件,並寫入數據,修改內容,最後關閉它,將由用戶處理是否對其保存,通過Excel.Application、Excel.Sheet對象來操作Excel文件,我覺得挺實用,把代碼也分享給大家吧。
01
unit Unit1;
02
interface
03
uses
04
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
05
Dialogs, ComObj, StdCtrls;
06
type
07
TForm1 =
class
(TForm)
08
Button1: TButton;
09
procedure Button1Click(Sender: TObject);
10
private
11
{ Private declarations }
12
public
13
{ Public declarations }
14
end;
15
var
16
Form1: TForm1;
17
implementation
18
{$R *.dfm}
19
procedure TForm1.Button1Click(Sender: TObject);
20
21
eclApp, WorkBook: Variant;
22
//聲明為OLE Automation 對象
23
xlsFileName: String;
24
begin
25
xlsFileName:=
'myExcel.xls'
;
26
try
27
//創建OLE對象Excel Application與 WorkBook
28
eclApp := CreateOleObject(
'Excel.Application'
);
29
WorkBook := CreateOleobject(
'Excel.Sheet'
30
except
31
ShowMessage(
'電腦裡未安裝Excel'
32
Exit;
33
34
35
'以下將演示新建一個XLS文件,並寫入數據然後關閉它'
36
workBook := eclApp.workBooks.Add;
37
eclApp.Cells(1 , 1) :=
'字符型'
38
eclApp.Cells(2 , 1) :=
'Excel文件'
39
eclApp.Cells(1 , 2) :=
'Money型'
40
eclApp.Cells(2 , 2) := 10.01;
41
eclApp.Cells(1 , 3) :=
'日期型'
42
eclApp.Cells(2 , 3) := Date;
43
WorkBook.SaveAs(xlsFileName);
44
WorkBook.Close;
45
'以下將演示打開剛創建的XLS文件,並修改其中的內容,最後交由用戶決定是否對其保存。'
46
WorkBook := eclApp.workBooks.Open(xlsFileName);
47
eclApp.Cells(2 , 1):=
'Excel文件類型'
48
if
MessageDlg(xlsFileName+
'文件已被修改,是否保存?'
,mtConfirmation, [mbYes, mbNo], 0) = mrYes then
49
WorkBook.Save
50
else
51
workBook.Saved := True;
//放棄修改
52
53
eclApp.Quit;
54
//退出Excel Application
55
//釋放VARIANT變量
56
eclApp := Unassigned;
57
'演示完畢!'
58
59
'不能正確操作Excel文件。可能是該文件已被其他程序打開, 或系統錯誤。'
60
61
62
63
eclApp:=Unassigned;
64
65
66
end.
多色漸變需要: 一個 顏色數組 和一個 位置數組 (0-1
七、體驗泛型方法1、Delphi2009不支持全局泛型方法
本例效果圖: 代碼文件:unit Unit1;inter
代碼文件:unit Unit1;interfaceuses
本例效果圖:unit Unit1; interface
//TPen 的主要屬性有四:Color、Width、S