Вниз
Скачать: CL | DM;

Обращение к ячейки excel по имени   Найти похожие ветки 

← →
Barsky ©   (2007-01-09 14:35) [0]

Проблема следующая.
Есть файлик xls, в нем одна ячейка имеет имя "sum52502".

Задача - считать значение. Не получается. Выдает ошибку

Project Project1.exe raised exception class EOleSysError with message "Член группы не найден". Process stopped. Use Step or Run to continue.

Причем присвоить значение по имени ячейки выходит без проблем. Как сделать?

 function GetXls():integer;
 var
   XLApp : variant;
   sum: double;
   i: integer;
 begin
 if FileExists(Edit3.Text) then
   begin
   sum:=0;
   XLApp:= CreateOleObject("Excel.Application");
   XLApp.Workbooks.open(Edit3.Text);
   XLApp.Visible:=true;
               XLApp.Workbooks[1].WorkSheets[2].Range("sum52502"):=123;
   showmessage(XLApp.Workbooks[1].WorkSheets[2].Range("sum52502"));


← →
Array ©   (2007-01-09 14:42) [1]

Range - ???  может всётаки Cells


← →
Array ©   (2007-01-09 14:43) [2]

тьфу, используйте .Range("sum52502").Value - или чтото типа валуэ там должно быть, а то Вы в  шоу месадже пытаетесь вывести саму ячейку а не её значение


← →
Barsky ©   (2007-01-09 14:44) [3]

В другом языке все через Range работало. Через Cells та же песня.


← →
Barsky ©   (2007-01-09 14:49) [4]

Пробывал с value и без - все едино =(


← →
KSergey ©   (2007-01-09 14:49) [5]

Автору: Можете привести гарантированно рабочий код на VBA? Приведите, плиз.


← →
Barsky ©   (2007-01-09 14:53) [6]

Вот на VBA

Range("G20").Value = Range("sum52502").Value


← →
KSergey ©   (2007-01-09 15:03) [7]

Это не весь код.
Это относительно листа или чего-то еще
Надо весь, чтобы понять где это Range("G20") реально живет


← →
Barsky ©   (2007-01-09 15:06) [8]

Если я не ошибаюсь, то Range только относительно листа бывает.

Это весь код.
Записал макрос. Потом стер все что там было и написал этот код - работает.

При выполнении ячейка "G20" принимает значение ячейки с именем "sum52502".


← →
Barsky ©   (2007-01-09 15:49) [9]

Еще идеи есть? Я уже голову сломал =(


← →
umbra ©   (2007-01-09 16:02) [10]


> Range("sum52502")

а не
Range["sum52502"] ?


← →
Barsky ©   (2007-01-09 16:09) [11]

Не пробывал, но сейчас попытался - ошибка

Project Project1.exe raised exception class EOleException with message "OLE error 800A03EC". Process stopped. Use Step or Run to continue.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.026 c
2-1171529046
wander
2007-02-15 11:44
2007.03.04
атрибутика файлов


3-1165837797
Vlad Oshin
2006-12-11 14:49
2007.03.04
просмотреть таблицу с сервера MySQL (Er:Invalid Data Translation)


2-1171294669
DimitrySDA
2007-02-12 18:37
2007.03.04
Сканирование каталогов и отображение в ListView


15-1170761971
stone
2007-02-06 14:39
2007.03.04
А был ли мальчик?


15-1170761496
Glivera
2007-02-06 14:31
2007.03.04
Опять лицензирование Windows XP




   Наверх