Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Можно ли подключиться к экселю через адо или бде 
:(
    Опции темы
dikiy
Дата 17.7.2007, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 23.6.2005

Репутация: нет
Всего: нет



Можно ли подключиться к экселю через адо или бде, а не создавать каждый раз аксесовскую базу и подключать туда экселевские таблицы? я попробовал создать в источниках данных одбц создать псевдоним, все создается в дельфи к этой базе вроде подключаюсь, но таблицу не вижу в чем может быть причина?
PM MAIL   Вверх
Rodman
Дата 17.7.2007, 08:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



к Excel?!

что значит подключится - это же не СУБД?!
PM MAIL WWW Skype GTalk YIM MSN   Вверх
dikiy
Дата 17.7.2007, 08:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 23.6.2005

Репутация: нет
Всего: нет



Да знаю чо это табличный процессор просто хотелось миновать путь создать базу аксес->прицепить туда таблицу эксель такое в принципе возможно?
PM MAIL   Вверх
Rodman
Дата 17.7.2007, 08:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



Само собой ты можешь создать таблицу (или таблицы на разных листах). но какой смысл, если потом возникнут сложности с выборкой данных!
PM MAIL WWW Skype GTalk YIM MSN   Вверх
dikiy
Дата 17.7.2007, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 23.6.2005

Репутация: нет
Всего: нет



ну таблицы я не создаю их присылают и не на разных листах а в разных файлах, а потом просят данные нв основании этих таблиц приходится их объединять через дельфи короче геморрой ну если сразу экселем пользоваться нельзя будем по старинке пожключать их через аксес
PM MAIL   Вверх
Rodman
Дата 17.7.2007, 09:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



все равно я не понял сути задачи!

Добавлено через 13 минут и 10 секунд
вот нашел в DRKB

Чтобы использовать только стандартные компоненты давайте попробуем работать с Excel через ADO. Это не самый быстрый и далеко не первый по возможностям метод (DAO работает на порядок быстрее и предоставляет куда больше возможностей), но ADO компоненты входят в стандартную поставку 5 и 6 Дельфи. Итак заходим в Панель управления Windows, идем в свойства ODBC, делаем DSN используя Excel драйвер, не забываем указать в свойствах на файл Excel. Закрываем ODBC, открываем Дельфи. Ставим на форму ADOConnection. Идем в ConnectionString - строим строку подключения - надо выбрать только ODBC провайдер и на следующей вкладке указать сделанный DSN, остальные опции в большинстве случаев можно оставить как есть. Строка получена. Кстати ее можно вообще упростить до вида: "DSN=MyDsn". Теперь вам доступны листы файла как таблицы а весь файл как база данных. Подключаем ADOQuery к ADOConnection. Cоздаем таблицу, т.е. новый лист - путем запуска следующей квери:

Код

Create Table MyTable1 (
Field1 varchar(20),
Field2 varchar(10) )


Снова переходим в дизайн - ставим на форму ADOTable, указываем как Connection наш компонент с ADOConnection, теперь если кликнуть на свойстве TableName - вы сможете увидеть в списке сделанную нами таблицу "MyTable1". Соедините таблицу с DBGrid - убедитесь что работа с таблицей в Excel мало отличается от работы с другими базами данных. 

PM MAIL WWW Skype GTalk YIM MSN   Вверх
Akella
Дата 17.7.2007, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



можно через ADO (ODBC), но будет очень глючно и медленно

Добавлено через 13 секунд
в DRKB где-то был пример
PM MAIL   Вверх
mutex
Дата 18.7.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 17.10.2004

Репутация: 2
Всего: 3



Попробуйте ADOConnection со строкой соединения, примерно так:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Tests\test1.xls;Extended Properties=Excel 8.0;

Учтите, что Excel-файл должен содержать только таблицу, т.е. выбросьте всю текстовую шелуху.

PM MAIL   Вверх
Marduk
Дата 30.7.2007, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 83
Регистрация: 9.4.2007

Репутация: нет
Всего: 2



Через ADO можно как в посте mutex, но таблица не должна быть открыта в экселе, т.к. для доступа к xsl файлам используется монопольный доступ. А если совместно с приведенным AdoConnection использовать ADODataSet, то будет возможно и sql запросы к excel таблице выполнять
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0510 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.