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

Выделение ячейки в Excel через OLE   Найти похожие ветки 

 
jiurajhgjhgty   (2004-01-08 19:24) [0]

А как через OLE поместить в Excel курсор на ту ячейку листа, котрая мне нужна (например A34)?
Я пишу:
...
В uses добавить ComObj
var
XLApp : variant;

Begin

XLApp:= CreateOleObject("Excel.Application");
XLApp.Workbooks.Add;
XLApp.WorkBooks[1].WorkSheets[1].range["A34"].select;{В этой строке ошибка}
End;

При выполнеии дает ошибку.Коворит что метод select неподдерживается.Пробовал тоже написать через Cells -тоже самое.Как быть?


 
Vlad ©   (2004-01-08 19:37) [1]


> Как быть?

Взять Excel, запустить на запись макрос, выделить ручками ячейку (или группу ячеек) и посмотреть в редакторе visual basic сформированный код макроса.
У меня лично твой код срабатывает.


 
jiurajhgjhgty   (2004-01-08 20:09) [2]

OK!Я нем ного перефразирую вопрос:
Есть На форму ставим ToleContainer (с вкладки System). И две кнопки Button1, Button2.И пишем код:

procedure TForm1.Button1Click(Sender: TObject);
var
begin
OleContainer1.CreateObjectFromFile("путь к любому файлу Excel",false);
OleContainer1.DoVerb(0);
OleContainer1.OleObject.WorkSheets[2].select;
OleContainer1.OleObject.WorkSheets[2].range["A34"].select;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
OleContainer1.OleObject.WorkSheets[2].range["A34"].select
end;

Последняя строка в обоих кодах идентична, но в первом случае она работает а во втором нет!!!!Почему?


 
Jedaito   (2004-01-09 01:17) [3]

при нажатии кнопки уходит фокус с контейнера

надо опять doverb(0)



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

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



Память: 0.45 MB
Время: 0.016 c
1-63228
Sergious
2004-01-09 15:39
2004.01.20
А в Delphi 7 есть закладка FastNet?


1-63095
Unax
2004-01-07 11:15
2004.01.20
Kylix 3


1-63105
del
2004-01-08 07:06
2004.01.20
освобождение памяти


3-63019
Trad
2003-12-22 06:47
2004.01.20
прямая запись в БД


1-63146
Инкогнито
2004-01-07 10:30
2004.01.20
окошечко




   Наверх