该更新你的Excel控件到office2010

        在网上找到有关delphi 对excel 操作时,网上说的都是先将dcloffice2K280.bpl(也有说老古董的dclofficexp280.bpl),相信我这些都过时了,你应该装dcloffice2010280.bpl。至少delphi11的bin目录就有这个文件,而且我安上去了,并且用的很爽。

用office2000及以前版本时,打开excel 文件是这样的:
        ExcelApplication1.Workbooks.Open ('c:\a.xls',12个 EmptyParam,0);
用office2010及时,打开excel 文件是这样的:
        ExcelApplication1.Workbooks.Open ('c:\a.xlsx', fasle, false, 12个 EmptyParam,0);
多了两个参数。

最最有用的是:2010版本可以输出PDF,以前的版本只能呵呵。因为以前版本没有:TExcelWorkbook.ExportAsFixedFormat 这个东西。

    ExcelWorkbook1.ExportAsFixedFormat(xlTypePDF,
      c:\a.pdf',
      xlQualityStandard,      // xlQualityStandard 或 xlQualityMinimum
      false, // 设置为 True 以指示应包含文档属性,或设置为 False 以指示省略它们。
      true, // 如果设置为 True,则忽略在发布时设置的任何打印区域。
      // 如果设置为 False,则使用发布时设置的打印区域。
      EmptyParam, // 要开始发布的页码。 如果省略此参数,则从头开始发布。
      EmptyParam, // 发布的终止页码。 如果省略此参数,则发布至最后一页。
      true, // 发布后是否打开PDF文件
      EmptyParam); // 指向 FixedFormatExt 类的指针。

我感觉我说的很清楚了,如果还不清楚,可以自行查阅:Excel2010.pas,上微软网站查自己想要的东西。

使用方便,功能强大。 type FileCheckResult = (fcrNotExistend,fcrNotXSLFile,fcrValidXSL); //文件不存在,不是XSL文件,合法的XSL文件 TOLEExcel = class(TComponent) private FExcelCreated: Boolean; FVisible: Boolean; FExcel: Variant; //Excel程序对象 FWorkBook: Variant; //Excel工作簿对象 FWorkSheet: Variant; //Excel工作簿 工作表对象 FCellFont: TFont; //单元格字体对象 FTitleFont: TFont; // FFontChanged: Boolean; FIgnoreFont: Boolean; FFileName: TFileName; //********************************************自己添加*****************************// FCreateFromFile:Boolean; //指示是否打开已有文件 FExcelCaption:string; //用程序打开Excel的窗体标 //*********************************来自U_Report*****************************// FRCPrePage:Integer; //每页显示的记录数 FMax:Integer; //最大的数组个数 procedure SetExcelCellFont(var Cell: Variant); procedure SetExcelTitleFont(var Cell: Variant); procedure GetTableColumnName(const Table: TTable; var Cell: Variant); procedure GetQueryColumnName(const Query: TQuery; var Cell: Variant); procedure GetFixedCols(const StringGrid: TStringGrid; var Cell: Variant); procedure GetFixedRows(const StringGrid: TStringGrid; var Cell: Variant); procedure GetStringGridBody(const StringGrid: TStringGrid; var Cell: Variant); protected procedure SetCellFont(NewFont: TFont); procedure SetTitleFont(NewFont: TFont); procedure SetVisible(DoShow: Boolean); function GetCell( ARow,ACol: Integer): string; procedure SetCell(ACol, ARow: Integer; const Value: string); function GetDateCell(ACol, ARow: Integer): TDateTime; procedure SetDateCell(ACol, ARow: Integer; const Value: TDateTime); //*********************************************自己添加************************************// procedure SetCaption(ACaption:string);//设置打开文件后,Excel主程序的窗体标题 function GetCapiton:string;//返回打开文件后,Excel主程序的窗体标题 public constructor Create(AOwner: TComponent); override; destructor Destroy; override; procedure C
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值