Как Вставить Картинку В Excel 2007

alba

New member
04.12.2008
2
0
#1
Здравствуйте, есть функция, которая вставляет картинку в Excel 2003:

Function PicturesInsert (sheet:variant;range:string; pictures_:string):boolean;
begin
PicturesInsert:=true;
try
E.ActiveWorkBook.Sheets.item[sheet].Range[range].Select;
E.ActiveWorkBook.Sheets.item[sheet].Pictures.Insert(pictures_).Select;
except
PicturesInsert:=false;
end;
End;

но это не работает в Excel 2007, тк картинка не вставляется в указанную ячейку, а позиционируется в начале листа,

Пожалуйста, поделитель готовой функцией, у кого есть
 

alba

New member
04.12.2008
2
0
#2
Здравствуйте, есть функция, которая вставляет картинку в Excel 2003:

Function PicturesInsert (sheet:variant;range:string; pictures_:string):boolean;
begin
PicturesInsert:=true;
try
E.ActiveWorkBook.Sheets.item[sheet].Range[range].Select;
E.ActiveWorkBook.Sheets.item[sheet].Pictures.Insert(pictures_).Select;
except
PicturesInsert:=false;
end;
End;

но это не работает в Excel 2007, тк картинка не вставляется в указанную ячейку, а позиционируется в начале листа,

Пожалуйста, поделитель готовой функцией, у кого есть

Уже сама написала, пользуйтесь на здоровье
Итак, эта функция правильно позиционирует рисунок в заданной ячейке для MS Excel 2007

Function PicturesInsert_2007 (sheet:variant;range:string;
pictures_:string):boolean;

begin
PicturesInsert_2007:=true;
try

E.ActiveWorkBook.Sheets.item[sheet].Range[range, EmptyParam].Select;
E.ActiveWorkBook.Sheets.item[sheet].Pictures.Insert(pictures_).Select;

E.Selection.Top:=E.ActiveWorkBook.Sheets.item[sheet].Range[range].Top;
E.Selection.Left:=E.ActiveWorkBook.Sheets.item[sheet].Range[range].Left;;

except
PicturesInsert_2007:=false;
end;
End;