Delphi操作Excel(Use Oel)

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;

操作图片

                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;//更改行距

原文地址:https://www.cnblogs.com/yzryc/p/6329488.html