Вы можете поместить код в Access или Excel. По моему опыту, с этим легче работать, чем разделять код между ними (что также работает).
Если вы обнаружите, что код автоматизации выполняется слишком медленно, вы можете разделить код, чтобы Access выполнялся функциями в Access, а Excel - функциями в Excel, а мастер-код просто запускает подпрограммы в обоих случаях. В этом случае вы можете поместить мастер-код в любое удобное для пользователя место для запуска. Я использовал C, Access, Word и Excel, и то, где вы положили кнопку запуска, не имеет большого значения, если весь код находится где-то еще.
Если ваши пользователи или сопровождающие больше знакомы с одним приложением, вы можете разместить там свой основной или главный код, но чаще я нахожу, что основной или главный код лучше размещать вместе с внутренностями приложения, поэтому что у меня вообще не может быть кода в другом партнере.
Из краткого описания звучит так, как будто в Excel будет проделана большая работа, поэтому я поместил бы весь код там.
Для извлечения данных из Access даже не требуется объект приложения Access - будет работать объект DAO, ADO или ODBC (или даже DDE), что будет намного быстрее, намного надежнее, намного проще, намного лучше, чем открывать оба приложения и автоматизировать одно из другого.
Если вы запускаете из Access, похоже, что для этого проекта потребуется объект автоматизации Excel. Теперь это работает хорошо, но все еще намного медленнее и более хрупко, делая это только с помощью Excel и объекта DAO.