Форум: "Основная";
Текущий архив: 2009.06.14;
Скачать: [xml.tar.bz2];
ВнизСкопировать Chart из Excel в Image Найти похожие ветки
← →
yaric (2008-05-21 09:47) [0]Необходимо забрать с листа график и отобразить на канве компонента TImage
Пробую так возникает ошибка. Плиз подскажите что неправильно..
var i:Integer;
ch,sh : OleVariant;
begin
lcid:=0;
lcid := GetUserDefaultLCId;
fXL := TExcelApplication.Create(nil);
try
fXL.ConnectKind := ckNewInstance;
fXl.Application.AutomationSecurity := 1;
fXL.DisplayAlerts[lcid] := False;
fXL.AutoQuit := False;
fXL.Visible[lcid] := false;
fXL.Connect;
fxl.Workbooks.Add("c:\1.xls", lcid);
ch:=(iDispatch(sh) as _Worksheet).ChartObjects("Chart. 1",lcid); //ошИБКА
(iDispatch(ch) as ChartObject).CopyPicture(xlscreen,xlbitmap);
if Clipboard.HasFormat(CF_BITMAP)
then Image1.Picture.Bitmap.Handle:=Clipboard.GetAsHandle(CF_bitmap);
except
ShowMessage("Невозможно соединиться с MS Excel");
end;
← →
Palladin © (2008-05-21 12:24) [1]эта ошибка, гласящая что она ошибка, наиболее распространенная ошибка в мире и решается очень легко
(С)
← →
Style © (2008-05-21 12:45) [2]А кто Workbook, Worksheet объявлять будет???
sh - вообще это что???ch:=(iDispatch(sh) as _Worksheet).ChartObjects("Chart. 1",lcid); //ошИБКА
к тому же метод не правильно используется в описании ChartObjects(Index, lcid) . т.е. первый параметр Index, а не Name
короче вот так работает:procedure TForm1.Button1Click(Sender: TObject);
var
fXL: TExcelApplication;
Sheet: _Worksheet;
Book: _Workbook;
Chart: ChartObject;
lcid: THandle;
begin
lcid := GetUserDefaultLCId;
fXL := TExcelApplication.Create(nil);
try
fXL.ConnectKind := ckNewInstance;
fXL.DisplayAlerts[lcid] := False;
fXL.AutoQuit := False;
fXL.Visible[lcid] := true;
fXL.Connect;
Book := fxl.Workbooks.Add("c:\1.xls", lcid);
Sheet := (Book.ActiveSheet as _Worksheet);
Chart := Sheet.ChartObjects(1,lcid) as ChartObject;
Chart.CopyPicture(xlscreen,xlbitmap);
if Clipboard.HasFormat(CF_BITMAP)
then Image1.Picture.Bitmap.Handle:=Clipboard.GetAsHandle(CF_bitmap);
except
ShowMessage("Превед медвед йа не икселъ");
end;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2009.06.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c