Use ComObj:
procedure TorderMore1.BitBtn2Click(Sender: TObject);
var
xlsFile:WideString;
var ExcelApp: Variant;
begin
SaveDialog1.FileName: = MyQuery3.FieldValues[ ' orderno ' ] + ' .xls ' ;
if SaveDialog1.Execute then
begin
xlsFile: = ExtractFilePath(application.ExeName) + ' xlsorder_detail.xls ' ;
ExcelApp : = CreateOleObject( ' Excel.Application ' );
ExcelApp.WorkBooks.Open(xlsFile);
ExcelApp.ActiveWorkBook.SaveAs(SaveDialog1.FileName);
ExcelApp.Cells[ 2 ].Value : = ExcelApp.Cells[ 2 ].Value + VarToStr(MyQuery3.FieldValues[ ' orderno ' ]);
if not ExcelApp.ActiveWorkBook.Saved then
ExcelApp.ActiveWorkBook.Save;
ExcelApp.Visible : = True;
// ExcelApp.ActiveWorkBook.Close;
// ExcelApp.Quit;
ExcelApp: = unassigned;
end;
end;
var
xlsFile:WideString;
var ExcelApp: Variant;
begin
SaveDialog1.FileName: = MyQuery3.FieldValues[ ' orderno ' ] + ' .xls ' ;
if SaveDialog1.Execute then
begin
xlsFile: = ExtractFilePath(application.ExeName) + ' xlsorder_detail.xls ' ;
ExcelApp : = CreateOleObject( ' Excel.Application ' );
ExcelApp.WorkBooks.Open(xlsFile);
ExcelApp.ActiveWorkBook.SaveAs(SaveDialog1.FileName);
ExcelApp.Cells[ 2 ].Value : = ExcelApp.Cells[ 2 ].Value + VarToStr(MyQuery3.FieldValues[ ' orderno ' ]);
if not ExcelApp.ActiveWorkBook.Saved then
ExcelApp.ActiveWorkBook.Save;
ExcelApp.Visible : = True;
// ExcelApp.ActiveWorkBook.Close;
// ExcelApp.Quit;
ExcelApp: = unassigned;
end;
end;
操作图片
ExcelApp.ActiveSheet.Pictures.Insert(tmpJpg).Select; //当前选择
ExcelApp.Selection.ShapeRange.IncrementLeft(1);//左移一空位 (Right)
ExcelApp.Selection.ShapeRange.IncrementTop(1);//上移一空位 (Bottom)
ExcelApp.Selection.ShapeRange.LockAspectRatio := True; //更改图片大小
ExcelApp.Selection.ShapeRange.Height := 58.5;
ExcelApp.Selection.ShapeRange.Width := 99.75;
ExcelApp.Selection.ShapeRange.Rotation := 0;
ExcelApp.ActiveSheet.Rows[Row].RowHeight := ExcelApp.Selection.ShapeRange.Height+2;//更改行距