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

Вниз

Отчет в Excel   Найти похожие ветки 

 
Silla ©   (2003-08-17 13:57) [0]

Привет мастерам!

Поискал я материал как работать с Excel посредством Delphi
и нашел лишь в Королевстве Delphi статью по интеграции
Почитал, но тяжело как-то, закчал пример,
и разобрался только с проверкой на наличия Execl,
и создания (открытия книги)
Но как работать с ячейками?
Есть таблица и связанная с ней таблица
Необходимо все экспортировать в Excel,
причем из второй таблицы необходимо все записи
записать в одну ячейку через запятую
Посоветуйте что-нибудь - стать или примеры какие
А может прямо на форуме и ответите.

Использую ADO


 
Silla ©   (2003-08-17 13:58) [1]

Заранее спасибо !


 
sniknik ©   (2003-08-17 14:06) [2]

> MS Access]
> Использую ADO
запрос
SELECT * INTO Sheet1 IN "d:\Test.Xls" "Excel 5.0;" FROM Table
не только положит данные в первый лист из таблици, но и создаст екселевский файл Test.Xls при отсутствии. (если лист уже есть меняй команду на INSERT INTO)


 
Silla ©   (2003-08-18 15:37) [3]

Используя такой подход не решаю вторую чатсь вопроса
Из второй таблицы (подчиненной) в одну ячейку необходимо
записать данные через запятую

Дополнение
Как корректно определить стоит ли на машине Excel?

Спасибо.


 
Alex Bredin ©   (2003-08-18 16:06) [4]


> Почитал, но тяжело как-то, закчал пример,
> и разобрался только с проверкой на наличия Execl,
> и создания (открытия книги)

а это кто писал?
там все разжевано и в рот положено


 
Silla ©   (2003-08-18 16:18) [5]

>Alex Bredin
Только теоретически, на практике оказалось, что все не так просто
есть сомнения что я все правильно понял
поэтому прошу еще раз объяснить или показать


 
sniknik ©   (2003-08-18 16:18) [6]

> Используя такой подход не решаю вторую чатсь вопроса
> Из второй таблицы (подчиненной) в одну ячейку необходимо
> записать данные через запятую
и никак не решиш (средствами движка), запросов делающих из столбца значений строку (с запятыми нет неважно) нет. только перебором, открыть как таблице и ... от начала до конца.

(переворачивать в запросе столбец->строка можно только если движок функции поддерживает и ты этот цикл в самом запросе напишеш, ну или в PIVOT таблицах в Access (но там тоже так врядли получится))

> Дополнение
> Как корректно определить стоит ли на машине Excel?
в этом случае Excel не нужен, обработка ведется в Jet ISAM-е (который есть раз Access база открыта).
если это "в обшем", так сказать для развтия
то к примеру так можно

V: Variant;

try
V:= CreateOleObject("Excel.Application");
except
raise Exception.Create("Нет установленного Excel-я");
end;

хотя можно и проще наверное (это "тяжеловесное" попытка запустить Excel только ради узнать запустится ли), в реестре к примеру посмотреть (хотя если в реестре есть соответствуюцие ветки это не значит что есть сам Excel :о))).


 
koks   (2003-08-18 17:01) [7]

ставь себе XL Report и не парься...

А статья(и) действительно написана неплохая(ие)..... для изучения. но пользоватьс ею "в лоб" не советую. Работа программы будет "зависеть от погоды". Вообще, OLE-взаимодействие , тем более с MS-программами штука очень не простая. Статья в королевстве - верхушка огромного айсберга. Чтобы самому поднять этот айсберг нужно перелопатить кучу исходников и теоретических трудов. Если у тебя есть время и желание - то вперед. Начинаешь с этой статьи - там есть ссылки куда смотреть дальше. Если времени нет, или лень.. (как было в моем случае :)), то - XL Report.


 
Silla ©   (2003-08-18 17:55) [8]

Я пробовал, но ошибки лезут со всех "дыр"
и не знаю на чем остановиться


 
Hawk2 ©   (2003-08-18 23:36) [9]

XL Report вещь хорошая, но платная. А шаровый компонент выводит только 64 записи. Я к примеру на основе статей из Королества и Афалина Софт написал свой модуль в котором пару процедур и функций с помощью которых делаю отчеты в Ексель. При этом данные выводятся по зарание созданому шаблону. Вот только с формулами не получилось. Но на это как уже говорили нужно время.



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

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

Наверх




Память: 0.49 MB
Время: 0.021 c
1-24519
Nestor
2003-08-27 08:09
2003.09.08
Мастера, подскажите пожалуйста как при выводе чилового значения


4-24743
VD601
2003-07-07 16:34
2003.09.08
Кто ловит WM_QUIT?


14-24679
Manfred
2003-08-20 22:22
2003.09.08
Сайт delphi.mastak.ru


4-24748
Coban
2003-07-06 12:30
2003.09.08
w9x аналог GetUserProfileDirectory


6-24599
Shluz
2003-06-27 20:41
2003.09.08
SMS своими руками ...