Как в таблицу access импортировать excel в

Обновлено: 07.07.2024

Сейчас я рассмотрю создание базы данных офиса РР непосредственно в Excel. Будут созданы те же таблицы с той же структурой, что и в базе, которая только что создавалась в Access. Я рассмотрю разные способы создания этих таблиц, в том числе путем экспорта таблиц Access. Первым делом я создал новую книгу Excel, в которой завел 5 рабочих листов по числу создаваемых таблиц, каждая страница именовалась по названию таблицы базы данных. Затем я перешел к созданию таблицы "Книги" на листе с одноименным названием. В процессе этой работы я следовал рекомендациям, приведенным в предыдущем параграфе. Работа это простая, и не думаю, что требуются хоть какие-либо дополнительные пояснения. Конечно, на этом этапе требуется выполнить подходящее форматирование для ячеек таблицы, но я не буду на этом останавливаться. Форматирование может быть и другим. Взгляните, что у меня получилось, и надеюсь, Вы сумеете сделать эту работу не хуже меня, в особенности с учетом того, что я не обладаю хорошим художественным вкусом.

Таблица


увеличить изображение
Рис. 4.14. Таблица "Книги", спроектированная в Excel
Экспорт таблиц Access

Если база данных в Access уже создана, то ее можно без труда экспортировать в Excel. Этим мы сейчас и займемся. Поскольку операции по экспорту можно выполнять по-разному, то я рассмотрю несколько способов. Начну с самого простого, основанного на классическом использовании буфера при переносе тех или иных данных из одного приложения Office 2000 в другое. Вот краткое описание моих действий по переносу таблицы "Сотрудники". Прежде напомню, что к моменту начала переноса таблицы у меня уже создана книга Excel, страницы которой будут хранить базу данных, и первая таблица этой базы была только что создана. Так что мне осталось сделать следующее:

  • Открыть БД офиса РР, сделанную на Access.
  • Открыть таблицу "Сотрудники" в режиме таблицы, выделить и скопировать в буфер ее содержимое.
  • Перейти на страницу "Сотрудники" рабочей книги Excel и выполнить операцию "Специальная вставка" из буфера, вставляя содержимое как текст в формате Unicode.
  • Отформатировать подходящим образом вставленную таблицу. Замечу, что для единообразия использовалось форматирование уже созданной таблицы "Книги".
  • Вся работа заняла несколько минут. Вот как выглядит таблица "Сотрудники" после ее переноса на соответствующий лист рабочей книги:

Копирование таблицы


Рис. 4.15. Копирование таблицы "Сотрудники" из Access в Excel
Специальные средства экспорта таблиц Access в Excel

Вместе с тем Access имеет специальные, развитые средства экспорта таблиц БД и других своих объектов - запросов, форм, отчетов. Таблицу "Заказы" я переместил в Excel, используя следующий способ:

  • В окне базы данных Access выбрал имя таблицы "Заказы".
  • В меню Сервис выбрал команду "Связи с Office" и подкоманду "Анализ в MS Excel". Результатом ее выполнения стало автоматическое создание новой книги Excel с единственной страницей "Заказы", содержащей требуемую таблицу с подходящим форматированием. Заметьте, что команда Связи с Office имеет и другие подкоманды - Слияние с MS Word, Публикация в MS Word, - позволяющие передавать таблицу Access в приложение Word. Все подкоманды команды Связи с Office позволяют выполнять операции не только с таблицами, но и с частями таблиц, запросами, формами, отчетами.
  • Получив на предыдущем шаге нужную мне таблицу в Excel, я использовал далее средства Excel для перемещения таблицы в нужное место имеющейся у меня книги. После чего я применил собственное форматирование, чтобы сохранить единый стиль всех страниц моей книги, хранящей базу данных.

Экспорт таблицы


увеличить изображение
Рис. 4.16. Экспорт таблицы "Заказы" с использованием команды Анализ в MS Excel

Наконец, я рассмотрю еще один возможный способ экспорта таблицы Access, основанный на широких возможностях Access по сохранению его объектов в виде файлов самых различных форматов. Например, таблицы, запросы, формы, отчеты можно экспортировать в формат HTML. Таблицы и запросы можно экспортировать в БД, удовлетворяющие стандарту ODBC, их можно экспортировать в текстовые файлы, в ASP-страницы, в базы данных Paradox или dBase и во многие другие форматы. Естественно, среди форматов присутствуют и форматы файлов Excel различных версий. Вот как выглядят мои действия по экспорту таблицы "Заказчики":

  • Открыл БД Access и выбрал нужную мне таблицу "Заказчики".
  • В меню "Файл" выбрал команду "Сохранить как", а затем - "Экспорт".
  • В появившемся диалоговом окне Экспорта выбрал папку, согласился с предложенным именем файла, совпадающим с названием таблицы, в окошке "тип файла" из раскрывающегося списка, задающего многочисленные возможности по экспорту таблицы, выбрал тип "Microsoft Excel 97-2000". Затем включил флажок "Сохранить формат" и щелкнул кнопку OK. Хочу обратить внимание на то, что при выполнении этой операции следует быть осторожным поскольку, если задать имя существующего файла в папке, то все его содержимое заменится новой единственной страницей.
  • В результате этих действий автоматически создается новая книга Excel с заданным именем файла, на единственный лист которой и записывается сохраняемая таблица. Результат этих действий немногим отличается от предыдущего случая, когда использовалась команда Связи с Office.
  • Также как и в предыдущем случае экспорта таблицы, получив файл Excel, я занялся перемещением полученной таблицы, используя средства Excel для перемещения таблицы в нужное место имеющейся у меня книги. После чего применил собственное форматирование, чтобы сохранить единый стиль всех страниц моей книги, хранящей базу данных.

Вот окончательный результат моих действий:

Экспорт таблицы

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

Декоративный значок.

Содержимое для средств чтения с экрана

Эта статья предназначена для людей с нарушениями зрения, использующих программы чтения с экрана совместно с продуктами Office. Она входит в набор содержимого Специальные возможности Office. Дополнительные общие сведения см. на домашней странице службы поддержки Microsoft.

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

Новые возможности Microsoft 365 становятся доступны подписчикам Microsoft 365 по мере выхода, поэтому в вашем приложении эти возможности пока могут отсутствовать. Чтобы узнать о том, как можно быстрее получать новые возможности, станьте участником программы предварительной оценки Office.

Дополнительные сведения о средствах чтения с экрана см. в статье о работе средств чтения с экрана в Microsoft Office.

В этом разделе

Подготовка Excel для импорта или связывания

Прежде чем переводить данные с Excel на Access, просмотрите его и решите, как вы хотите импортировать данные из него.

Подготовка базы данных Access к импорту

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

Убедитесь, что Access база данных предназначена не только для чтения и что у вас есть разрешения на внесение в нее изменений.

Решите, нужно ли хранить данные в новой или существующей таблице:

Если вы решите сохранить данные в новой таблице, Access создаст таблицу и добавит в нее импортируемые данные. Если таблица с указанным именем уже существует, Access переописает ее содержимое импортируемыми данными.

Если вы решите добавить данные в существующую таблицу, строки Excel будут добавлены в указанную таблицу.

Если вы решите Excel данные в существующую таблицу Access, убедитесь, что структура и параметры полей в исходных данных в Excel совпадают с данными в конечной таблице Access. Чтобы открыть таблицу Access в конструкторе для проверки, нажмите ALT+H, W, D. Проверьте таблицу на контрольный список в разделе Подготовка точки базы данных (шаг 2) в разделе Импорт данных в книге Excel или связывать ихс данными.

Импорт данных

При импорте данных Access создает их копию в новой или существующей таблице, не изменяя исходный Excel на этом.

Примечание: Возможно, вам потребуется коллега, который поможет вам на шаге 9 выбрать поле, который вы хотите изменить.

Закроем Excel книгу, если она открыта.

Откройте пунктов Access, в которой будут храниться импортируемые данные.

Совет: Если вы хотите создать пустую базу данных, нажмите ALT+F, N, L.

Чтобы открыть диалоговое окно Внешние данные — Excel Электронные таблицы, в зависимости от используемой версии Access:

В версии Microsoft 365 или Access 2019 нажмите ALT+X, N, 1, затем F и X.

В Access 2016 илиAccess 2013 нажмите ALT+X, чтобы перейти на вкладку Внешние данные. Нажимая клавишу TAB, пока не дойдете до группы Импорт & Связь, нажимая клавишу СТРЕЛКА ВПРАВО, пока не услышите "Excel", а затем нажмите клавишу ВВОД.

Откроется диалоговое Excel Внешние данные — электронные таблицы.

В диалоговом окне Внешние данные — Excel Электронные таблицы укажите файл Excel, содержащий данные, которые вы хотите импортировать:

Чтобы переместить фокус на текстовое поле Имя файла, нажмите F, а затем введите или введите путь к Excel файлу.

Чтобы найти файл, нажмите R. Откроется диалоговое окно Открытие файла. Перейдите к нужному файлу и нажмите ввод, чтобы выбрать его.

Чтобы указать, как нужно хранить импортируемые данные, сделайте следующее:

Если вы хотите сохранить данные в новой таблице, нажмите I, чтобы перейти к параметру Импортировать исходные данные в новую таблицу в текущей базе данных. Позднее будет предложено указать имя этой таблицы.

Если вы хотите, чтобы данные были в существующей таблице, нажмите A, чтобы перейти к параметру Применить копию записей к таблице. Чтобы выбрать таблицу, один раз нажмите клавишу TAB. Фокус перемещается в список таблиц. Нажмите клавиши ALT+СТРЕЛКА ВНИЗ, чтобы развернуть список, нажимая клавишу СТРЕЛКА ВВЕРХ или СТРЕЛКА ВНИЗ, пока не услышите нужное значение, а затем нажмите клавишу ВВОД, чтобы выбрать ее. Этот параметр недоступен, если база данных не содержит таблиц.

Нажимая клавишу TAB, пока не дойдете до кнопки ОК, нажмите клавишу ВВОД. Запускается мастер импорта электронных таблиц.

Совет: Если ваше устройство чтения с экрана не читает окна мастера автоматически, нажмите клавиши SR+W.

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

Чтобы выбрать нужный элемент, нажмите клавиши ALT+О, нажмите клавишу TAB, нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужный элемент, а затем нажмите клавишу ВВОД, чтобы выбрать его.

Чтобы выбрать именуемый диапазон, нажмите клавиши ALT+R, нажмите клавишу TAB, нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужный диапазон, а затем нажмите клавишу ВВОД, чтобы выбрать его.

Откроется следующее окно мастера.

Если первая строка исходных таблиц или диапазонов содержит имена полей, нажмите I, чтобы перейти к параметру Первая строка содержит заголовки столбцов. Нажмите ввод, чтобы перейти к следующему окну мастера.

При подавлении данных в существующую таблицу можно перейти к шагу 11.

В окне нового мастера при необходимости можно указать сведения о каждом импортируемом поле. Будет выбрано первое поле на этом или в диапазоне. Здесь доступны перечисленные ниже возможности

Чтобы изменить имя текущего поля, нажмите ALT+M и введите новое имя.

Чтобы изменить тип данных поля, нажмите ALT+T. Фокус перемещается в список Тип данных. Чтобы развернуть список, нажмите клавиши ALT+СТРЕЛКА ВНИЗ. Нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужное значение, нажмите клавишу TAB один раз.

Чтобы изменить индекс поле, нажмите ALT+I. Вы услышите текущее значение. Чтобы развернуть список, нажмите клавиши ALT+СТРЕЛКА ВНИЗ. Нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужное значение, нажмите клавишу TAB один раз.

Если вы не хотите импортировать текущее поле, нажмите ALT+S, чтобы перейти к и выберите параметр Не импортировать поле.

Чтобы выбрать другое поле, нажимая F6, пока не услышите "Область", и попросите коллегу помочь вам выбрать нужное поле. Измените поля, как описано выше. После этого нажмите ввод, чтобы перейти к следующему окну мастера.

Добавьте первичный ключ для новой таблицы. Первичный ключ определяет записи в таблице, что позволяет быстрее получать данные. Выполните одно из указанных ниже действий.

Чтобы Access первичный ключ, нажмите клавишу A.

Чтобы выбрать свой первичный ключ, нажмите клавишу C. Чтобы определить используемый ключ, нажмите клавишу TAB один раз. Фокус перемещается в список ключевых клавиш. Чтобы развернуть список, нажмите клавиши ALT+СТРЕЛКА ВНИЗ. Нажимая клавишу СТРЕЛКА ВВЕРХ или СТРЕЛКА ВНИЗ, пока не услышите нужный ключ.

Если вы не хотите использовать первичные ключи, нажмите клавишу O.

Чтобы переместить последнее окно мастера, нажмите ввод.

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

Примечание: Если вы услышите оповещение о том, что таблица уже существует, и хотите переписать существующую таблицу импортируемыми данными, нажмите Y. Если вы хотите переименовать таблицу, нажмите N. Нажмите ALT+I, чтобы вернуть фокус в поле Импорт в таблицу, введите другое имя таблицы и нажмите ввод.

Если импорт был полностью или частично успешным, Access отображает состояние импорта. Access также предлагает сохранить шаги импорта, чтобы быстро повторить их без мастера импорта. Чтобы выбрать этот параметр, нажмите ALT+V. Чтобы назвать шаги импорта, нажмите ALT+A и введите имя операции импорта. Чтобы сохранить шаги импорта, нажмите ALT+S.

Создание связи с данными в Excel

С помощью мастера связывания электронных таблиц создайте связь базы данных Access с данными в Excel, чтобы можно было использовать средства создания запросов и отчетов в Access, не сохраняя копию данных Excel в базе данных.

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

База данных может содержать несколько связанных таблиц.

Запуск мастера связывать электронные таблицы

В Access есть два способа выбрать Excel, с которой нужно связать книгу, и запустить мастер связывать электронные таблицы. Вы можете открыть книгу Excel в Access или воспользоваться диалоговое окно Внешние данные — Excel таблица.

Открытие книги Excel в Access

Откройте базу Access, в которой вы хотите создать связь.

Нажмите ALT+F, O, чтобы перейти в меню Открыть.

Чтобы найти книгу, нажмите O. Откроется Windows открыть.

Чтобы изменить тип файла, нажимая клавишу TAB, пока не услышите "Тип файлов, Microsoft Access", а затем нажмите клавиши ALT+СТРЕЛКА ВНИЗ. Нажимая клавишу СТРЕЛКА ВВЕРХ, пока не услышите "Все файлы", а затем нажмите клавишу ВВОД.

Перейдите к нужной книге и нажмите ввод, чтобы выбрать ее и запустить мастер связывать электронные таблицы.

Использование диалогового окна Внешние данные — Excel электронных таблиц

Откройте базу Access, в которой вы хотите создать связь.

Совет: Если вы не хотите создавать связь с существующей базой данных, нажмите ALT+F, N, L, чтобы создать пустую базу данных.

Чтобы открыть диалоговое окно Внешние данные — Excel Электронные таблицы, в зависимости от используемой версии Access:

В версии Microsoft 365 или Access 2019 нажмите ALT+X, N, 1, затем F и X.

В Access 2016 или Access 2013 нажмите ALT+X, чтобы перейти на вкладку Внешние данные. Нажимая клавишу TAB, пока не дойдете до группы Импорт & Связь, нажимая клавишу СТРЕЛКА ВПРАВО, пока не услышите "Excel", а затем нажмите клавишу ВВОД.

Откроется диалоговое Excel Внешние данные — электронные таблицы.

В диалоговом окне Внешние данные — Excel Электронные таблицы укажите файл Excel, на который вы хотите создать ссылку:

Чтобы переместить фокус на текстовое поле Имя файла, нажмите F, а затем введите или введите путь к Excel файлу.

Чтобы найти файл, нажмите R. Откроется диалоговое окно Открытие файла. Перейдите к нужному файлу и нажмите ввод, чтобы выбрать его.

Нажмите ALT+L, чтобы перейти к источнику данных, выберите параметр Связать с источником данных, создав связанную таблицу,и нажмите ввод. Запускается мастер связывать электронные таблицы.

Создание связи с данными Excel с помощью Excel электронных таблиц

Мастер связывания электронных таблиц поможет вам в процессе связывания. Просто выберите нужные параметры и не Excel к базе данных.

Совет: Если ваше устройство чтения с экрана не читает окна мастера автоматически, нажмите клавиши SR+W.

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

Чтобы выбрать нужный элемент, нажмите клавиши ALT+О, нажмите клавишу TAB, нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужный элемент, а затем нажмите клавишу ВВОД, чтобы выбрать его.

Чтобы выбрать диапазон, нажмите клавиши ALT+R, нажмите клавишу TAB, нажимая клавишу СТРЕЛКА ВНИЗ, пока не услышите нужный диапазон, а затем нажмите клавишу ВВОД, чтобы выбрать его.

Откроется следующее окно мастера.

Если первая строка исходных таблиц или диапазонов содержит имена полей, нажмите I, чтобы перейти к параметру Первая строка содержит заголовки столбцов. Нажмите ввод, чтобы перейти к следующему окну мастера.

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

Примечание: Если вы услышите оповещение о том, что таблица уже существует, и хотите переписать существующую таблицу импортируемыми данными, нажмите Y. Если вы хотите переименовать пунктов назначения таблицу, нажмите N. Нажмите ALT+I, чтобы вернуть фокус в поле Импорт в таблицу, введите другое имя таблицы и нажмите ввод.

Если не удалось связать исходный Excel с контрольным списком в разделе Подготовка базы данных (шаг 2) раздела Импорт данных в книге Excel или связывание с данными.

См. также

Техническая поддержка пользователей с ограниченными возможностями

Корпорация Майкрософт стремится к тому, чтобы все наши клиенты получали наилучшие продукты и обслуживание. Если у вас ограниченные возможности или вас интересуют вопросы, связанные со специальными возможностями, обратитесь в службу Microsoft Disability Answer Desk для получения технической поддержки. Специалисты Microsoft Disability Answer Desk знакомы со многими популярными специальными возможностями и могут оказывать поддержку на английском, испанском, французском языках, а также на американском жестовом языке. Перейдите на сайт Microsoft Disability Answer Desk, чтобы узнать контактные сведения для вашего региона.

Если вы представитель государственного учреждения или коммерческой организации, обратитесь в службу Disability Answer Desk для предприятий.

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

Понятно, что обратное преобразование данных Excel в Access выполняется сложнее по той простой причине, что база данных Access устроена значительно сложнее, чем списки Excel. Поэтому нет многих возможностей, которые есть при переносе данных из Access в Excel. Нельзя, например, сохранить таблицу Excel в виде mdb-файла в формате базы данных Access. Тем не менее, существуют, по крайней мере, два способа переноса данных. Первый из них позволяет начать работу по переносу данных в Excel, используя его команду "Перенести в MS Access", являющейся аналогом рассмотренной выше команды Access - "Связи с Office - Анализ в MS Excel". Второй способ использует возможности Access по импорту внешних данных. Я рассмотрю сейчас оба эти способа и выполню обратный перенос созданной базы данных офиса РР в Excel в базу данных Access, создав под другим именем новую копию существующей базы данных.

Импорт списков Excel в приложении Access

Приложение Access позволяет импортировать внешние данные, и я воспользуюсь этой возможностью для переноса списков Excel. Я создал в Access новую, пока что пустую базу данных, дал ей имя "dbPPnew" и занялся выполнением операции импорта, выбрав из меню "Файл" команду "Внешние данные | Импорт…". В открывшемся окне Импорта я, как обычно, в окошке "тип файла" выбрал из большого раскрывающегося списка нужный мне тип - Microsoft Excel - затем в поле "Папка" выбрал нужную папку, выбрал файл с книгой Excel, содержащей базу данных и нажал кнопку "Импорт". В результате, Мастер Импорта начинает свою работу. Вот первое окно, которое открывает этот Мастер, предлагая импортировать рабочие листы или именованные диапазоны книги Excel:

Импорт списков Excel

Обратите внимание, я предпочел работать с именованными диапазонами, а не с листами книги. Дело в том, что Мастер импорта не слишком интеллектуален и не может разобраться, где на рабочем листе начинается список Excel. Он предполагает, что заголовки полей списка начинаются в первой строке. Я же рабочий лист начинал с некоторого общего заголовка, и только потом уже размещал список. По этой причине, прежде чем заниматься импортом списков, я ввел именованные диапазоны для списков, назвав каждый диапазон по имени списка. Это позволит Мастеру Импорта разобраться с именами полей списка и сделать их именами полей таблицы Access, при условии, что на втором шаге работы Мастера будет включен флажок "Первая строка содержит заголовки столбцов". Я включил этот флажок, а на третьем шаге работы включил переключатель "В новой таблице", поскольку речь идет не о добавлении данных в существующую таблицу, а о создании новой таблицы. Вот как выглядит следующее окно Мастера Импорта, позволяющего уточнить характеристики полей таблицы:

Мастер Импорта уточняет характеристики полей таблицы


Рис. 4.19. Мастер Импорта уточняет характеристики полей таблицы

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

Последний шаг работы Мастера Импорта

Я не стал вызывать Мастера Анализа таблиц, но надеюсь, что еще придет его время, и я расскажу подробнее о шагах его работы. Таблица "Книги" была успешно перенесена из Excel в Access. Аналогичным образом можно было бы импортировать и другие списки Excel, преобразуя их в таблицы базы данных Access. Но следующий список "Заказчики" я перенесу из Excel в Access, используя команду "Перенести в MS Access", которая появляется в меню Excel при включенной надстройке "AccessLinks".

Перенос списков из Excel в Access

Специальная надстройка AccessLinks добавляет в меню Excel команды, позволяющие преобразовать списки Excel в объекты базы данных Access - таблицы, формы, отчеты. Если надстройка AccessLinks еще не подключена, то это следует сделать, выбрав команду "Надстройки" из меню "Сервис" и включив флажок соответствующей надстройки. При включенной надстройке в меню "Данные" появляются три команды: MS Access Form, MS Access Report, Convert to MS Access. Первые две из них позволяют по данным списка Excel построить форму и отчет базы данных Access, я не буду на них останавливаться, поскольку по существу все построение осуществляют известные в Access Мастера построения форм и отчетов. Давайте чуть более подробно рассмотрим лишь третью команду, преобразующую список в таблицу базы данных. Первое окно, которое появляется после вызова этой команды, позволяет указать базу данных Access:

Первый шаг Мастера Преобразований списка Excel в таблицу Access


Рис. 4.21. Первый шаг Мастера Преобразований списка Excel в таблицу Access

А далее все возвращается на круги своя и работу продолжает уже знакомый нам Мастер Импорта, который и создает таблицу в базе данных Access. Замечу только, что поскольку работа начинается в Excel, то Excel способен распознать, где начинается список и передать точный список Мастеру Импорта без всяких пустых строк. Это, пожалуй, достаточно важная причина, по которой я рекомендовал бы перенос списков выполнять, используя именно этот способ работы. На этом я и закончу рассмотрение вопросов экспорта - импорта баз данных между Excel и Access.

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

Понятно, что обратное преобразование данных Excel в Access выполняется сложнее по той простой причине, что база данных Access устроена значительно сложнее, чем списки Excel. Поэтому нет многих возможностей, которые есть при переносе данных из Access в Excel. Нельзя, например, сохранить таблицу Excel в виде mdb-файла в формате базы данных Access. Тем не менее, существуют, по крайней мере, два способа переноса данных. Первый из них позволяет начать работу по переносу данных в Excel, используя его команду "Перенести в MS Access", являющейся аналогом рассмотренной выше команды Access - "Связи с Office - Анализ в MS Excel". Второй способ использует возможности Access по импорту внешних данных. Я рассмотрю сейчас оба эти способа и выполню обратный перенос созданной базы данных офиса РР в Excel в базу данных Access, создав под другим именем новую копию существующей базы данных.

Импорт списков Excel в приложении Access

Приложение Access позволяет импортировать внешние данные, и я воспользуюсь этой возможностью для переноса списков Excel. Я создал в Access новую, пока что пустую базу данных, дал ей имя "dbPPnew" и занялся выполнением операции импорта, выбрав из меню "Файл" команду "Внешние данные | Импорт…". В открывшемся окне Импорта я, как обычно, в окошке "тип файла" выбрал из большого раскрывающегося списка нужный мне тип - Microsoft Excel - затем в поле "Папка" выбрал нужную папку, выбрал файл с книгой Excel, содержащей базу данных и нажал кнопку "Импорт". В результате, Мастер Импорта начинает свою работу. Вот первое окно, которое открывает этот Мастер, предлагая импортировать рабочие листы или именованные диапазоны книги Excel:

Импорт списков Excel

Обратите внимание, я предпочел работать с именованными диапазонами, а не с листами книги. Дело в том, что Мастер импорта не слишком интеллектуален и не может разобраться, где на рабочем листе начинается список Excel. Он предполагает, что заголовки полей списка начинаются в первой строке. Я же рабочий лист начинал с некоторого общего заголовка, и только потом уже размещал список. По этой причине, прежде чем заниматься импортом списков, я ввел именованные диапазоны для списков, назвав каждый диапазон по имени списка. Это позволит Мастеру Импорта разобраться с именами полей списка и сделать их именами полей таблицы Access, при условии, что на втором шаге работы Мастера будет включен флажок "Первая строка содержит заголовки столбцов". Я включил этот флажок, а на третьем шаге работы включил переключатель "В новой таблице", поскольку речь идет не о добавлении данных в существующую таблицу, а о создании новой таблицы. Вот как выглядит следующее окно Мастера Импорта, позволяющего уточнить характеристики полей таблицы:

Мастер Импорта уточняет характеристики полей таблицы


Рис. 4.19. Мастер Импорта уточняет характеристики полей таблицы

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

Последний шаг работы Мастера Импорта

Я не стал вызывать Мастера Анализа таблиц, но надеюсь, что еще придет его время, и я расскажу подробнее о шагах его работы. Таблица "Книги" была успешно перенесена из Excel в Access. Аналогичным образом можно было бы импортировать и другие списки Excel, преобразуя их в таблицы базы данных Access. Но следующий список "Заказчики" я перенесу из Excel в Access, используя команду "Перенести в MS Access", которая появляется в меню Excel при включенной надстройке "AccessLinks".

Перенос списков из Excel в Access

Специальная надстройка AccessLinks добавляет в меню Excel команды, позволяющие преобразовать списки Excel в объекты базы данных Access - таблицы, формы, отчеты. Если надстройка AccessLinks еще не подключена, то это следует сделать, выбрав команду "Надстройки" из меню "Сервис" и включив флажок соответствующей надстройки. При включенной надстройке в меню "Данные" появляются три команды: MS Access Form, MS Access Report, Convert to MS Access. Первые две из них позволяют по данным списка Excel построить форму и отчет базы данных Access, я не буду на них останавливаться, поскольку по существу все построение осуществляют известные в Access Мастера построения форм и отчетов. Давайте чуть более подробно рассмотрим лишь третью команду, преобразующую список в таблицу базы данных. Первое окно, которое появляется после вызова этой команды, позволяет указать базу данных Access:

Первый шаг Мастера Преобразований списка Excel в таблицу Access


Рис. 4.21. Первый шаг Мастера Преобразований списка Excel в таблицу Access

А далее все возвращается на круги своя и работу продолжает уже знакомый нам Мастер Импорта, который и создает таблицу в базе данных Access. Замечу только, что поскольку работа начинается в Excel, то Excel способен распознать, где начинается список и передать точный список Мастеру Импорта без всяких пустых строк. Это, пожалуй, достаточно важная причина, по которой я рекомендовал бы перенос списков выполнять, используя именно этот способ работы. На этом я и закончу рассмотрение вопросов экспорта - импорта баз данных между Excel и Access.

Читайте также: