Экспорт данных в форматы объектов WWW (World Wide Web)

Access 2010 предоставляет очень широкий выбор форматов объектов WWW, в которые можно экспортировать данные. Во-первых, это статические страницы в формате HTML. Полученные таким образом документы будут являться мгновенными снимками таблиц на момент их экспорта. Кроме того, таблицы Access 2010 можно экспортировать либо в файлы формата IDC/HTX, либо в файлы формата ASP. И в этом случае отображаемые программой просмотра Интернети данные будут актуальными, однако их обновление не может производиться средствами программы просмотра. И наконец, можно формировать из таблиц Access документы XML для обмена с другими приложениями. Более аодробные сведения об экспорте данных в форматы объектов WWW приведены .
Быстрый экспорт данных в другие приложения Microsoft Office
Access позволяет быстро экспортировать данные из таблицы в файл Microsoft Excel. Выполняется это с помощью команды Связи с Office (Office Links). При этом можно экспортировать как всю таблицу, так и ее часть. Если нужно экспортировать всю таблицу, выделите эту таблицу в списке таблиц окна базы данных и нажмите стрелку справа от кнопки Связи с Office (Office Links) на панели инструментов. Выберите из списка команду Анализ в MS Excel (Analyze It with Microsoft Excel). Access создаст новый файл XLS, скопирует в него данные из выделенной таблицы, запустит приложение Excel и откроет в нем этот файл. Аналогично можно экспортировать только часть таблицы Access, например подмножество строк или даже диапазон ячеек. Для этого необходимо открыть таблицу в режиме Таблицы, выбрать подмножество строк, например с помощью фильтра, или выделить диапазон ячеек. Кнопки Связи с Office (Office Links) на панели инструментов в этом режиме нет, но можно выполнить команду Сервис, Связи с Office, Анализ в MS Excel (Tools, Office Links, Analyze It with Microsoft Excel), и выбранные данные будут экспортированы в Excel. На показан диапазон ячеек таблицы "Поставщики", который мы таким способом экспортировали в Excel.
Еще одной удобной возможностью Access является выполнение слияния данных из таблицы Access с документом Word. Эта возможность может быть использована при печати писем или рассылке других документов. В таблице Access могут храниться адреса клиентов для рассылки, а документ Word представляет собой посылаемый документ. В процессе слияния можно вставить в документ из таблицы Access имя клиента, его адрес или другую нужную информацию.
Объектом экспорта данных для слияния с текстовым документом Microsoft Word может быть не только таблица, чаще всего это бывает запрос, который позволяет выбрать из таблицы нужные записи. Процесс слияния таблицы выполняется так же, как и процесс слияния результатов запроса, поэтому мы рассмотрим его чуть ниже .
 
Использование буфера обмена Windows для импорта и экспорта данных
При импорте или экспорте данных, созданных с помощью приложения Windows, можно воспользоваться буфером обмена Windows. Это средство позволяет применять стандартные команды Windows и быстро перемещать данные из одного приложения Windows в другое. Это особенно удобно при добавлении или замене существующих данных в таблице Access 2010.
Однако этот метод имеет одно существенное ограничение — структура таблицы, в которую импортируются данные, должна соответствовать данным, передаваемым через буфер обмена. Например, для правильной вставки данных из строк рабочего листа Excel в таблицу Access необходимо, чтобы типы данных полей таблицы Access соответствовали типам данных каждого столбца, скопированного в буфер обмена диапазона ячеек.
Чтобы добавить новые записи в таблицу Access 2010 при помощи буфера обмена Windows:

  1. Запустите приложение, которое будет использоваться для копирования данных в буфер обмена (в нашем примере это Microsoft Excel), и откройте файл с данными.
  2. Выделите данные, которые нужно добавить в таблицу Access. Например, выделите диапазон ячеек рабочего листа, начиная со столбца, соответствующего первому полю таблицы Access. При этом необязательно выделять все оставшиеся столбцы, соответствующие полям таблицы Access, поскольку Access 2010 добавит пустые значения или значения по умолчанию в поля, соответствующие столбцам, не включенным в выделенный диапазон.
  3. Выберите команду Правка, Копировать (Edit, Copy) или нажмите комбинацию клавиш <Ctrl>+<C>, чтобы скопировать выделенный диапазон ячеек в буфер обмена Windows.
  4. Откройте таблицу, в которую нужно добавить данные, в режиме Таблицы.
  1. Выберите команду Правка, Добавить из буфера (Edit, Paste Append). Если в процессе добавления записей не возникнет ошибок, появится окно, запрашивающее подтверждение на добавление записей в таблицу. Нажмите кнопку Да (Yes). Новые записи будут добавлены в конец таблицы Access. Чтобы разместить добавленные записи в правильной последовательности, выберите команду Записи, Удалить фильтр (Records, Remove Filter/Sort).

При добавлении в таблицу Access 2010 данных с помощью буфера обмена Windows могут возникнуть ошибки по одной из двух причин:

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

В любом случае Access 2000 создаст таблицу "Ошибки вставки" (Paste Errors) и запишет в нее все записи, вызвавшие ошибки. Использование таблицы "Ошибки вставки" аналогично использованию таблицы ошибок импорта данных, описанной ранее в этой главе.
Ошибки, вызванные наличием повторяющихся значений в первичном ключе таблицы Access 2010, приводят к появлению на экране диалоговых окон с сообщениями об ошибках. Читая сообщения в этих окнах, вы можете получить более подробную информацию о каждой ошибке, если нажмете кнопку Справка (Help), можете запретить вывод дальнейших сообщений об ошибках, а можете просто прервать процесс добавления записей. В любом случае все ошибки будут зафиксированы в таблице "Ошибки вставки" (на приведена таблица, которая была получена при повторной вставке в базу данных шести уже имеющихся в ней записей).
После завершения добавления записей в таблицу появится сообщение о том; что записи, которые не удалось добавить из буфера обмена, помещены в таблицу "Ошибки вставки".
Совет
Если в процессе вставки выдается много сообщений об ошибках, вызванных повторяющимися значениями в ключевом поле, лучше прервать этот процесс (реальная вставка записей происходит только после подтверждения в конце процесса), найти записи с повторяющимися значениями, исправить их и заново выполнить процесс вставки. Для того чтобы быстро найти повторяющиеся данные, можно выполнить запрос специального вида — "Повторяющиеся записи". Раскройте список запросов в окне базы данных, нажмите кнопку Создать (New), в появившемся диалоговом окне Новый запрос (New Query) выделите элемент Повторяющиеся записи (Find Duplicates Query Wizard) и нажмите кнопку ОК.
Замечание
Если записи вставляются в таблицу, ключом которой является поле типа Счетчик (AutoNumber), то при добавлении новых записей они перенумеровываются в соответствии с последним значением счетчика. То есть даже если значения этого поля в добавляемых записях будут совпадать с ключами в уже существующих записях, они будут вставлены, при этом значения ключей в новых записях будут отличаться от тех, что они имели до вставки.
Access позволяет не только добавить в таблицу записи из буфера обмена, но и заменить уже существующие в таблице записи. При этом все столбцы данных, скопированные в буфер обмена, должны соответствовать полям таблицы Access, причем первый столбец обязательно должен соответствовать первому полю. Однако в буфере обмена могут быть не все столбцы таблицы Access. В этом случае данные в полях таблицы, для которых отсутствуют столбцы в буфере обмена, останутся неизменными. А вот число строк в буфере обмена должно соответствовать числу выделенных заменяемых строк в таблице. Это число не должно быть меньше, чем число строк в буфере. В противном случае данные из последних строк буфера будут игнорироваться. Процедура замены записей аналогична описанной выше процедуре добавления записей, только перед вставкой нужно выделить заменяемые записи в таблице.
Простейшим способом экспорта данных из таблицы Access в другое приложение Windows также является копирование содержимого таблицы Access в буфер обмена с
последующей вставкой в документ другого приложения. Например, чтобы скопировать таблицу Access в документ Word через буфер обмена:

  1. Откройте нужную таблицу в режиме Таблицы (мы использовали для примера таблицу "Поставщики").
  2. Выделите в этой таблице нужный диапазон ячеек, нужное количество записей или все записи. Таблица "Поставщики" примет вид, приведенный на. Если необходимо выделить все поля во всех записях таблицы, выберите команду Правка, Выделить все записи (Edit, Select All Records) или щелкните левой кнопкой мыши по серому прямоугольнику в левом верхнем углу окна на пересечении строки заголовков столбцов и столбца выделения записей.
  1. Нажмите комбинацию клавиш <Ctrl>+<C> или выберите команду Правка, Копировать, чтобы скопировать выделенные данные в буфер обмена.
  2. Запустите Microsoft Word и создайте в нем новый документ, выбрав команду Файл, Создать (File, New).
  3. Выберите команду Правка, Вставить (Edit, Paste) или нажмите комбинацию клавиш <Ctrl>+<V>. Данные из буфера обмена будут вставлены в документ Word в виде отформатированной таблицы.

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