对于学习很有帮助

源代码在线查看: 如何在delphi中操作excel.html

软件大小: 2022 K
上传用户: siclj
关键词:
下载地址: 免注册下载 普通下载 VIP

相关代码

				
				
				如何在Delphi中操作Excel2001年02月16日 14:55
				
				
								p {  font-size: 12px; line-height: 22px}
				-->
				
				
								.Name01 {  font-size: 12px; line-height: 20px; color: #FF3300}
				.Time01 {  font-size: 9px; color: #666666}
				-->
				
				
								.Name02 {  font-size: 12px; color: #009999; line-height: 18px}
				.Time02 {  font-size: 9px; color: #666666; line-height: 9px}
				.index01 {  font-size: 12px; line-height: 20px; color: #FFFFFF}
				.content {  font-size: 12px; line-height: 24px}
				.name00 {  font-size: 24pt; color: #666666}
				-->
				
				
				
				
								
				function MM_openBrWindow(theURL,winName,features) { //v2.0
				
				  window.open(theURL,winName,features);
				
				}
				
				//-->
				
				
				
				
				
				
				
				如何在Delphi中操作Excel
				
				(作者:穆永 2001年02月16日 14:55) 
				  在数据库应用软件的开发过程中,经常需要把数据转换成Excel文件,让用户作进一步的数据处理。而Delphi是开发数据库应用系统的常用工具,那么,如何在Delphi中操作Excel呢?
				  我们知道,在Microsoft Office软件中有一种内嵌的编程语言VBA,它是一种宏语言,利用它,你可以编写出功能强大的代码,如打开文件、修改数据、保存数据和设置字体等。另一方面,Microsoft Office软件中的宏能以VBA代码的形式记录下你的操作过程。因此借助宏操作,可以很轻松地实现某一功能,并把这些代码稍作修改嵌入到你的软件中。但是VBA也存在一个缺点,它必须有Microsoft Office作平台,在哪里编写,必须在哪里执行。例如在Excel下编写的一段VBA代码,则它只有在Excel下才能运行。因此,笔者的方法就是把VBA代码嵌入到Delphi中,从而实现用Delphi操作Excel。 
				  下面,我们以Delphi程序为例,说明这种调用方法:
				  Unit excel; 
				  interface
				  uses
				  Windows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls,ComObj;
				  //ComObj是操作OLE对象的函数集
				  type TForm1 =class(TForm)
				  Button1: TButton;
				  procedure Button1Click(Sender: TObject);
				  private
				  { Private declarations } 
				  public
				  { Public declarations } 
				  end;
				  var
				  Form1: TForm1; 
				  implementation
				  {$R *.DFM}
				  procedure TForm1.Button1Click(Sender: TObject);
				  var
				  eclApp,WorkBook:Variant;
				  //声明为OLE Automation 对象 
				  xlsFileName:string;begin
				  xlsFileName:='ex.xls';
				  try
				  //创建OLE对象Excel Application与 WorkBook 
				  eclApp:=CreateOleObject('Excel.Application');
				  WorkBook:=CreateOleobject('Excel.Sheet');
				  except
				  ShowMessage('您的机器里未安装Microsoft Excel。'); 
				  Exit;
				  end;
				  try
				  ShowMessage('下面演示:新建一个XLS文件,并写入数据,最后关闭它。');
				  workBook:=eclApp.workBooks.Add;
				  eclApp.Cells(1 , 1):='字符型'; 
				  eclApp.Cells(2 , 1):='Excel文件'; 
				  eclApp.Cells(1 , 2):='Money型'; 
				  eclApp.Cells(2 , 2):=10.01; 
				  eclApp.Cells(1 , 3):='日期型';eclApp.Cells(2 , 3):=Date; 
				  WorkBook.saveas(xlsFileName);
				  WorkBook.close;
				  ShowMessage('下面演示:打开刚创建的XLS文件,并修改其中的内容,然后,由用户决定是否保存。');
				  WorkBook:=eclApp.workBooks.Open(xlsFileName);
				  eclApp.Cells(2 , 1):='Excel文件类型'; 
				  if MessageDlg(xlsFileName+'文件已被修改,是否保存?',mtConfirmation, 
				[mbYes, mbNo], 0) = mrYes then 
				  WorkBook.save
				  else
				  workBook.Saved := True; //放弃修改 
				  WorkBook.Close;
				  eclApp.Quit;
				  //退出Excel Application 
				  //释放VARIANT变量
				  eclApp:=Unassigned;
				  except
				  ShowMessage('不能正确操作Excel文件。可能是该文件已被其他程序打开,或系统错误。');
				  WorkBook.close;
				  eclApp.Quit;
				  //释放VARIANT变量
				  eclApp:=Unassigned;
				  end;
				  end;
				  end.
				  经过上述操作过程后,我们就可以很放心地将数据库中的数据转换成Excel文件了。 
				
				
				
				
							

相关资源