var dbim
dbim:=ExcelApplication1.Selection[0];
dbim.ActiveSheet.pictures.insert('c:\test.jpg');
老是提示錯誤activesheet
dbim:=ExcelApplication1.Selection[0];
dbim.ActiveSheet.pictures.insert('c:\test.jpg');
老是提示錯誤activesheet
调试欢乐多
应该用
var dbim:数据类型
'method'activesheet'not supported by automationobject'
raise by run?
if not Query2.FieldByName('bjds12').IsNull then
begin
try
tempstream:=TStringStream.Create(' ');
TBlobField(Query2.FieldByName('bjds12')).SaveToStream(tempstream);
tblobfield(query2.FieldByName('bjds12')).SaveToFile('c:\test.jpg');
// tempstream.Seek(0,soFromBeginning);
// tempstream.Position:=0;
JpegMap:=TJpegImage.Create;
jpegmap.LoadFromFile('c:\test.jpg');
dbimage1.Picture.Graphic:=jpegmap;
// image1.Picture.LoadFromFile('c:\test.jpg'); // deletefile('c:\test.jpg');
// jpegmap.LoadFromStream(tempstream);
// blobstream:=TBlobStream.Create(TBlobField(Query2.FieldByName('bjds12')),bmRead); // JpegMap.LoadFromStream(blobstream); // dbImage1.Picture.BitMap.Assign(JpegMap);
// dbimage1.CopyToClipboard; excelworkSheet1.Range[excelworksheet1.cells.item[b3+9,2],excelworksheet1.Cells.item[b3+9,2]].Select;
dbim:=ExcelApplication1.Selection[0]; dbim.activesheet.pictures.insert('c:\test.jpg'); dbim.ShapeRange.ScaleWidth(0.33, msoFalse, msoScaleFromTopLeft);
dbim.ShapeRange.ScaleHeight(0.48, msoFalse, msoScaleFromTopLeft); finally
jpegmap.free;
tempstream.free;
end;
要不就可以插入進去但不知怎麼放小,要不就插入進去圖片太大。
1。dbim2類型是olevataint
excelapplication1:=Texcelapplication.Create(application);
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _worksheet);
dbim2:=excelworksheet1.Application;
dbim2.activesheet.pictures.insert('c:\test.jpg');
不知怎麼放小。
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Excel2000, OleServer;type
TForm1 = class(TForm)
ExcelApplication1: TExcelApplication;
ExcelWorksheet1: TExcelWorksheet;
ExcelWorkbook1: TExcelWorkbook;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}uses jpeg;procedure TForm1.Button1Click(Sender: TObject);
var dbim2:OLEVariant;
begin
ExcelApplication1.Connect;
ExcelApplication1.Visible[0]:=True;
ExcelApplication1.Workbooks.Add('',0);
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets[1] as _WorkSheet);
ExcelWorkSheet1.Activate;
dbim2:=excelworksheet1.Application;
dbim2.activesheet.pictures.insert('e:\exchange\1.jpg').select;
dbim2.selection.shaperange.scalewidth(1.8, 0, 0);//这是放大1.8倍
dbim2.selection.shaperange.scaleheight(1.8, 0, 0);//1.8当然也可以是0.5
end;end.//Form
object Form1: TForm1
Left = 210
Top = 114
Width = 696
Height = 480
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 320
Top = 360
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object ExcelApplication1: TExcelApplication
AutoConnect = False
ConnectKind = ckRunningOrNew
AutoQuit = False
Left = 96
Top = 96
end
object ExcelWorksheet1: TExcelWorksheet
AutoConnect = False
ConnectKind = ckRunningOrNew
Left = 160
Top = 104
end
object ExcelWorkbook1: TExcelWorkbook
AutoConnect = False
ConnectKind = ckRunningOrNew
Left = 208
Top = 112
end
end