//我已经试验成功的代码: procedure TForm1.Button1Click(Sender: TObject); var MyWorkBook: _WorkBook; FileName: string;
begin ExcelApplication1.Connect; ExcelApplication1.Visible[0] := True; ExcelApplication1.Caption := ‘应用程序调用 Microsoft Excel‘;
FileName:=‘e:\temp\book1.xls‘; //由于我又时候运行需要一个0,有所时候2个, //如果报参数不匹配的错误,可以删掉或者添加后面0 的个数 MyWorkBook:= ExcelApplication1.Workbooks.Open(FileName, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, 0,0,0); ExcelWorkbook1.ConnectTo(MyWorkBook); ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _WorkSheet);
//调用工作簿中已经存在的名称为 My 的宏 ExcelApplication1.Run(‘My‘); end;
加入Servers页的 TExcelApplication TExcelWorkbook TExcelWorksheet 像下面这样:
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExcelXP, OleServer;
type TForm1 = class(TForm) ExcelApplication1: TExcelApplication; ExcelWorkbook1: TExcelWorkbook; ExcelWorksheet1: TExcelWorksheet; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
|