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