Вниз
Скачать: 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.022 c
1-63100
Jenaxx
2004-01-08 01:19
2004.01.20
Как получить инфу о пользователе, всю ту что можно получить


1-63137
ss300
2004-01-07 00:37
2004.01.20
преобразование string в float ....


3-63021
Rem
2003-12-22 17:02
2004.01.20
Поиск в TClientDataSet


14-63306
Vlad Oshin
2003-12-26 10:21
2004.01.20
СВЯТОЕ ПИСЬМО :)


8-63258
Psibug
2003-09-15 19:24
2004.01.20
Antialiasing в Opengl




   Наверх