窗体上,有ExcelApplication1 , ExcelWorkBook1 , ExcelWorkSheet1 三个控件。代码如下uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, Grids, DBGrids, StdCtrls, FileCtrl, Menus,
DBGridEhGrouping, GridsEh, DBGridEh, StrUtils, ExcelXP, OleServer, ComObj,
Excel2000;
procedure TForm3.N11Click(Sender: TObject); //统计综合概算
var
lujing:string; v:OleVariant;
begin
ExcelApplication1.workbooks.Add(v,0); //新建 1个工作本
ExcelWorkBook1.ConnectTo(ExcelApplication1.ActiveWorkbook);
ExcelWorkSheet1.ConnectTo(ExcelWorkBook1.Activesheet as _Worksheet);
ExcelWorkSheet1.Cells.Item[2,3].FormulaR1C1:='单位文件名称';
ExcelWorkBook1.SaveAs('e:\sss.xls',v,v,v,v,v,v,v,v,v,v,0); ExcelWorkBook1.Save ;
excelworkbook1.Close;
excelworksheet1.Disconnect;
excelworkbook1.Disconnect;
excelapplication1.Disconnect; excelapplication1.Quit;
end;运行,出现 OLE error 800A03EC求解
ps:uses出现excelxp和excel2000,应该是跟我 家里和单位,excel装的版本不一样有关系,但上述错误均出现
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, Grids, DBGrids, StdCtrls, FileCtrl, Menus,
DBGridEhGrouping, GridsEh, DBGridEh, StrUtils, ExcelXP, OleServer, ComObj,
Excel2000;
procedure TForm3.N11Click(Sender: TObject); //统计综合概算
var
lujing:string; v:OleVariant;
begin
ExcelApplication1.workbooks.Add(v,0); //新建 1个工作本
ExcelWorkBook1.ConnectTo(ExcelApplication1.ActiveWorkbook);
ExcelWorkSheet1.ConnectTo(ExcelWorkBook1.Activesheet as _Worksheet);
ExcelWorkSheet1.Cells.Item[2,3].FormulaR1C1:='单位文件名称';
ExcelWorkBook1.SaveAs('e:\sss.xls',v,v,v,v,v,v,v,v,v,v,0); ExcelWorkBook1.Save ;
excelworkbook1.Close;
excelworksheet1.Disconnect;
excelworkbook1.Disconnect;
excelapplication1.Disconnect; excelapplication1.Quit;
end;运行,出现 OLE error 800A03EC求解
ps:uses出现excelxp和excel2000,应该是跟我 家里和单位,excel装的版本不一样有关系,但上述错误均出现
具体的用法自己去百度吧,或者打开Excel看看FormulaR1C1的VBA方法是怎么写的还有:ExcelWorkSheet1.Cells.Item[2,3]改成ExcelWorkSheet1.Cells[2,3]
贴出正确的,给再有疑问的兄弟解惑
excelapplication1.ActiveWorkBook.SaveAs(savedialog1.filename,xlNormal,'','',False,False,v,v,v,v,v,0);改为这样写即可