Как обратиться к ячейке Excel?

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
ElenaA
Сообщения: 15
Зарегистрирован: 09 июн 2006, 10:00

Помогите, пожалуйста!
У меня есть книга Excel с данными. Мне нужно эти данные скачать с помощью Delphi и рассовать по массивам. Как подключиться к нужной книге, а потом обратиться на определенном листе к определенной ячейке? Заранее благодарна.
treider
Сообщения: 57
Зарегистрирован: 01 сен 2005, 13:29
Откуда: Алматы
Контактная информация:

Создаешь объект автоматизации Exel.Application, а далее в любом справочнике по VBA.
Если не хочешь создовать то в Dilphi 6 есть соответтсвующие компоненты
ElenaA
Сообщения: 15
Зарегистрирован: 09 июн 2006, 10:00

А какие компоненты? С ними-то и проблема... :( (
treider
Сообщения: 57
Зарегистрирован: 01 сен 2005, 13:29
Откуда: Алматы
Контактная информация:

На вкладке Servers есть компонент ExelApplication
ElenaA
Сообщения: 15
Зарегистрирован: 09 июн 2006, 10:00

Да, но на них я не нашла строки подключения к конкретной книге. Или не там искала? Может, там нужно параметры вводить вручную? Справку попробовала перерыть - тоже не нашла, а большой толстой книги у меня нет и в ближайшем времени, к сожалению, не предвидится... Пробую, как крот, в слепую.
HELP!...
treider
Сообщения: 57
Зарегистрирован: 01 сен 2005, 13:29
Откуда: Алматы
Контактная информация:

Компонента EcxelApplication создает экземпляр приложения Exel. Далее вы можете использовать любые функцие которые предоставляет дисп интерфейс Excel примерно так
ExcelApplication.visible =True;
ExcelApplication.Workbooks.open('C:\my.xls');

Для того что бы узнать что предоставляет этот самый дисп можно сделать следующие:
Открыть Excel
нажать Alt+F11
В редакторе VBA набрать Application. нажать ctrl+пробел

В редакторе VBA также имеются средства для просмотра описаний функций для конкретного объекта (сами описания могут храниться в файлах ocx, tlb ...)

Что бы разобраться по глубже нужно почитать литературу по Com+, ActiveX

Иногда возможно использовать функцию записи макроса Ms Office после чего полученый сценарий переделывают для Delphi
treider
Сообщения: 57
Зарегистрирован: 01 сен 2005, 13:29
Откуда: Алматы
Контактная информация:

Код: Выделить всё

		
xl := CreateOleObject('Excel.Application');
xl.Application.EnableEvents := FALSE;
xl.DisplayAlerts := FALSE;
xlWbk := xl.Workbooks.Add;
Range := xlWbk.WorkSheets[1].Range[xlWbk.WorkSheets[1].Cells[1,1], xlWbk.WorkSheets[1].Cells[nRecs, nFields]];
Range.Value := varArray;
ElenaA
Сообщения: 15
Зарегистрирован: 09 июн 2006, 10:00

Спасибо!
Ответить