Использование Excel в качестве внешнего интерфейса для доступа к базе данных (с VBA) - PullRequest
27 голосов
/ 10 марта 2009

Я создаю небольшое приложение для друзей, и они хотели бы иметь возможность использовать Excel в качестве внешнего интерфейса. (пользовательский интерфейс в основном будет пользовательской формы в Excel). У них есть куча данных в Excel, которые они хотели бы запросить, но я не хочу использовать Excel в качестве базы данных, так как не думаю, что она подходит для этой цели и рассматриваю возможность использования Access. [Кстати, я знаю, что у Access есть свои недостатки, но бюджет нулевой и Access уже на компьютере друга]

Подводя итог, я рассматриваю возможность выгрузки группы данных в Access и последующего использования Excel в качестве внешнего интерфейса для запроса базы данных и отображения результатов в среде стиля пользовательской формы.

Вопросы:

  1. Насколько просто связать Access из Excel с помощью ADO / DAO? Это довольно ограничено с точки зрения функциональности или я могу стать креативным?
  2. Оплачиваю ли я штраф за производительность (по сравнению с использованием форм в Access в качестве пользовательского интерфейса)?
  3. Предполагается, что база данных всегда будет обновляться с помощью команд ADO / DAO из Excel VBA. Означает ли это, что у меня может быть несколько пользователей Excel, использующих эту единую базу данных Access, и не будет возникать проблем с параллелизмом и т. Д .?
  4. Любые другие вещи, о которых я должен знать?

Я обладаю сильными навыками Excel VBA и думаю, что смогу довольно быстро преодолеть Access VBA, но никогда прежде не делал ссылки на Excel / Access. Я мог бы вставить данные в Excel и использовать в качестве квази-базы данных, но это кажется более болезненным, чем оно стоит (а не надежным долгосрочным решением)

Любой совет приветствуется.

Alex

Ответы [ 12 ]

0 голосов
/ 09 января 2010

Зависит от того, какую функциональность вы ожидаете от решения Excel <-> Acess. Во многих случаях, когда у вас нет бюджета, чтобы получить полное прикладное решение, эти маленькие утилиты работают. Если сфера охвата проекта ограничена, я бы выбрал это решение, потому что Excel дает вам гибкость в разработке электронных таблиц в соответствии с вашими потребностями, и тогда вы можете использовать эти предварительно разработанные листы для пользователей. Разработка формы, подобной электронной таблице, в Access - это более трудоемкий и сложный процесс, требующий некоторого ActiveX. Этот объект может не только обрабатывать данные, но и представлять их в электронных таблицах, таких как форматы, тогда это решение должно работать с ограниченной областью действия.

0 голосов
/ 19 марта 2009

Подключение Excel к Access с использованием VBA очень полезно, я использую его в своей профессии каждый день. Строка подключения, которую я использую, соответствует программе, найденной по ссылке ниже. Программа может быть автоматизирована для выполнения нескольких соединений или задач в одночасье, но основной код соединения выглядит одинаково. Удачи!

http://vbaexcel.eu/vba-macro-code/database-connection-retrieve-data-from-database-querying-data-into-excel-using-vba-dao

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...