Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

связка с excel   Найти похожие ветки 

 
nyron ©   (2006-02-14 19:12) [0]

Пожалуйста подскажите как сделать чтобы я из дельфи мог обращаться в excel (просто нужно брать данные из excel и переносить в дэльфи). плиз.


 
Desdechado ©   (2006-02-14 19:37) [1]

подключаться к экселевским книжкам как к БД?
например, через БДЕ с использованием ODBC
есть и другие способы


 
umbra ©   (2006-02-14 19:50) [2]

из делфи получить доступ можно двумя способами (оба предполагают, что эксель установлен на компьютере)
1) использовать компонент TExecApplication с закладки  Servers палитры    
  компонентов
2) Использовать функцию CreateOleObject

Я предпочитаю второй способ, потому что он позволяет легко переносить макросы, записанные в самом экселе в программу (в основном надо только заменять круглые скобки квадратными)

Создать эксель из программы, написанной в делфи можно так

uses ...., Variants, ActiveX, ComObj, Excel97, ...;
{....................................}
var
 ExecApp: variant; // объявляем переменную, которая будет содержать ссылку
                          //на эксель
{.......................................}
procedure WorkWithExcel;
begin
 ExcelApp := CreateOleObject("Excel.Application");//пытаемся создать экземпляр
                                                                  //экселя
 if VarIsEmpty(ExcelApp) or VarIsNull(ExcelApp) then    //если не получилось
   begin
    ShowMessage("Не могу создать экземпляр Экселя");
    exit;
  end;
  try //если получилось, то ловим возможные ошибки
    {делаем все, что необходимо}
  finally //в любом случае закрываем эксель в конце
    ExcelApp.Quit; /закрываем приложение
    ExcelApp := Unassigned; //освобождаем интерфейс. Это необходимо, чтобы
                                     //наш эксель не остался в списке задач после
                                     //работы с ним
end;


В пространстве между try и finally совершаем в экселе все необходимые действия (чтение данных, запись данных, форматирование ячеек и т.д.). Чтобы понять, что там можно писать, лучше всего пользоваться самим Экселем. Открываете его, включаете запись макроса, совершаете необходимые действия, выключаете запись и после этого просматриваете текст макроса. После минимального редактирования его можно скопировать в программу на делфи.

Вообще эта тема очень обширна, и лучше поискать литературу и изучить ее.


 
nyron ©   (2006-02-14 19:57) [3]

спасибо большое


 
YurikGL ©   (2006-02-14 21:25) [4]

www.delphikingdom.com/helloworld/excel.htm



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

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.054 c
2-1140244985
X9
2006-02-18 09:43
2006.03.05
Узнать выбранный принтер


15-1139668558
ArtemESC
2006-02-11 17:35
2006.03.05
Компилятор Pascal для HP iPAQ...


15-1139561483
@BraIN
2006-02-10 11:51
2006.03.05
Что бы это значило..


2-1140067495
Canopus
2006-02-16 08:24
2006.03.05
Как активировать компоненту


1-1138691166
ORMADA
2006-01-31 10:06
2006.03.05
MainMenu+MDI