Процесс импорта данных Excel в Access может показаться несколько запутанным, хотя на самом деле таковым не является. Все дело в количестве используемых в процессе параметров. Вы можете либо импортировать данные непосредственно в таблицу Access, либо создать связь с таблицей Excel. Спрашиваете, в чем различие? Импортированные данные записываются в Access, а связанные остаются в Excel, несмотря на то, что являются доступными для применения в базе данных. Более подробное описание этих операций приводится в двух следующих разделах.
Импорт данных Excel в таблицу Access
Под импортом подразумевается обычное копирование (передача) данных из одного файла в другой. При этом Access данные не модифицирует. В настоящем разделе описывается копирование данных Excel в Access. После того как данные записываются в таблицу Access, изменение базовых данных в Excel не отражается на импортированных данных Access. Нам необходимо импортировать файл
КаталогиЕхсеl.xls, выполнив такие действия.
1. Выберите в окне базы данных команду Файл>Внешние данные>Импорт.
2. В меню Тип файла выберите Microsoft Office Excel (*.xls), затем в списке файлов укажите
КаталогиЕхсеl.х1c и щелкните на кнопке Импорт. Кроме того, можно дважды щелкнуть на этом файле. В любом случае будет запущен мастер Импорт электронной таблицы.
3. В первую очередь мастеру нужно знать, что импортируется — вся таблица или ее именованный диапазон. Под именованным диапазоном в Excel подразумевается определенный набор ячеек, к которым можно обращаться с использованием указанного имени. В данной таблице именованных диапазонов нет, поэтому оставьте выбранным переключатель
Листы. Если вы установите переключатель Именованные диапазоны, список, расположенный справа, не изменится (так как именованных диапазонов не существует). В нижней части окна мастера приведены данные таблицы. Щелкните на кнопке
Далее.
4. В следующем окне в качестве имен полей можно указать заголовки столбцов Excel. Рекомендуется всегда устанавливать флажок
Первая строка содержит заголовки столбцов. В противном случае имена полей будут обрабатываться Excel как обычные записи. Установив флажок, щелкните на кнопке
Далее.
5. Мастер позволяет сохранить данные в новой таблице или в уже существующей. По умолчанию выбран переключатель
В новой таблице. Не изменяя ничего в этом окне, щелкните на кнопке Далее.
6. В следующем окне выполняются многие действия. Во-первых, можно переименовать любое поле, выбрав его в нижнем списке и указав имя в элементе управления
Имя поля. Во-вторых, можно указать индекс, о котором рассказывается в главе 11, «Настройка таблиц». Если Access затрудняется в интерпретации данных, активизируется список
Тип данных, с помощью которого можно указать тип данных для поля. Выбор флажка Не импортировать (пропустить) поле приведет к отмене импорта определенного поля. Оставьте все параметры без изменений и щелкните на кнопке
Далее.
7. На данном этапе мастер намеревается помочь в определении первичного ключа. По умолчанию предполагается создание нового ключа автонумерации. Выберите переключатель Определить ключ, а затем, в раскрывающемся списке справа, опцию Имя. Затем щелкните на кнопке
Далее (информация о первичных ключах содержится в главе 4, «Планирование базы данных»).
8. В последнем окне присвойте новой таблице имя. Таблица Каталоги уже существует, поэтому введите имя
КаталогиИзЕхсеl и щелкните на кнопке Готово. На экране появится сообщение об импорте электронной таблицы. Щелкните на кнопке
ОК.
9. В окне Растения: база данных найдите новую таблицу и откройте ее. Таблица с импортированными данными показана на рис. 16.3. Она очень похожа на исходную таблицу
Каталоги — у них даже общий первичный ключ. Данные в процессе выполнения операций экспорта-импорта практически не изменились.
Связывание с данными Excel
Данные Excel не обязательно импортировать в Access. В некоторых случаях с таблицей Excel можно создать связь. Такая связь является динамической. Это значит,
что при внесении изменений в источник данных, т.е. в Excel, они изменяются и в Access, и наоборот. Чтобы продемонстрировать описываемый эффект на практике, настроим связь с файлом КаталогиЕхса! .xls, выполнив следующие действия.
Рис. 16.3. Мастер создал новую таблицу и скопировал в нее данные из таблицы Excel
1. Выберите в Access команду Файл>Внешние данные> Связь с таблицами.
2. В списке Тип файла выберите элемент Microsoft Excel (*.xls), укажите в списке файлов таблицу
КаталогиЕхсеl .xls и щелкните на кнопке Связь. Кроме того, на файле можно дважды щелкнуть (для указания файлов в других таблицах используется элемент управления
Папка, но в данном примере он не потребуется). Будет запущен мастер Связь с электронной таблицей.
3. В первую очередь следует указать, что именно будет связываться — вся таблица или только именованный диапазон. Оставьте выбранным переключатель
Листы и щелкните на кнопке Далее.
4. В следующем окне можно указать заголовки столбцов Excel в качестве имен полей. Рекомендуется всегда устанавливать флажок
Первая строка содержит заголовки столбцов. В противном случае имена полей будут обработаны Excel как обычные записи. Установив флажок, щелкните на кнопке Далее.
5. В последнем окне введите имя новой связанной таблицы СвязанныеКаталогиИзЕхсеl, щелкните на кнопке Готово, а затем на кнопке
ОК в окне предупреждения. Среди других записей таблиц в окне базы данных появится запись новой таблицы, обладающая в отличие от записей всех других таблиц значком Excel, как показано на рис. 16.4.
Смело открывайте связанную таблицу и вносите в нее изменения. Затем откройте исходную таблицу в Excel и убедитесь, что ее содержимое также изменилось. Теперь, наоборот, измените данные в этой таблице, закройте ее, откройте связанную таблицу в Access, и вы убедитесь, что в ней отобразились изменения, произведенные в таблице Excel.