Взаимодействие MS ACCESS с MS WORD и MS EXCEL
Таблицы, запросы, формы, отчеты можно передавать в MS WORD и MS EXCEL, и обратно - данные из таблиц MS WORD и MS EXCEL можно передавать в MS ACCESS.
Экспорт данных из MS ACCESS.
Выделив в окне базы данных какой-либо объект, через меню Файл → Сохранить как/экспорт можно преобразовать объект в формат приложений MS OFFICE (или формат HTML, или формат различных баз данных других типов) и сохранить в файле выбранного типа.
1) Экспорт в MS WORD производится в универсальном формате.rtf (Rich Text Format). Объекты OLE не экспортируются. Формы экспортируются в табличном виде. При экспорте отчета сохраняется формат текста и параметры страницы, но не сохраняются графические разделители.
Через пункт меню Сервис → Связи с Office → Публикация в MS WORD можно произвести преобразование типа файла в формат.rtf с одновременным открытием его в окне MS WORD.
2) Экспорт в MS EXCEL может производиться в формате xls. Экспорт с одновременным открытием файла в окне MS EXCEL может быть выполнен через пункт меню Сервис → Связи с Office → Анализ в MS EXCEL.
Кроме того, открыв какой-либо объект в режиме таблицы, можно передать всю или часть таблицы копированием через буфер обмена. При вставке из буфера в MS WORD скрытые столбцы не передаются, а в MS EXCEL будут вставлены все столбцы таблицы.
Импорт данных в MS ACCESS.
Импорт данных выполняется через пункт меню:
Внешние данные → Импорт. В списке Тип файлов можно выбрать тип импортируемых файлов xls, или html, или txt и др.
Можно импортировать таблицу MS EXCEL в новую таблицу ACCESS или в существующую.
Импорт в существующую таблицу наиболее надежен при одинаковой структуре таблиц MS ACCESS и MS EXCEL. В противном случае возможны непредсказуемые ошибки, так как система не контролирует правильность соответствия типов полей при передаче данных.
При импорте в новую таблицу структура таблицы MS EXCEL должна соответствовать требованиям MS ACCESS, а именно:
все строки таблицы должны иметь одинаковый набор полей;
в таблице не должно быть промежуточных строк с вычислениями;
желательно, чтобы на листе, с которого производится импорт, находилась всего одна таблица.
В процедуре импорта возможен отказ от передачи некоторых полей, а также изменение имен полей. При импорте формулы MS EXCEL игнорируются, а результаты расчетов сохраняются в формате с плавающей точкой.
Предположим, что в MS EXCEL создана таблица – график отпусков, которую надо импортировать в MS ACCESS.
График предоставления отпусков в 2004 году | ||
ФИО | Пред. отпуск | Тек. Отпуск |
Акимов П.Д. | 01.02-20.02.03 | 05.06-24.06.04 |
Борисов М.Э. | 10.05-05.06.03 | 04.09-23.09.04 |
Горина А.Е. | 15.03-02.04.03 | 05.06-24.06.04 |
Иванов П.Л. | 04.01-30.01.03 | 15.05-03.06.04 |
Киселев П.Д. | 05.04-01.05.03 | 31.07-19.08.04 |
Николаев Б.В. | 06.09-25.09.03 | 06.10-18.10.04 |
Петров А.Д. | 28.06-24.07.03 | 03.07-29.07.04 |
Попов П.О. | 04.10-16.10.03 | 26.06-22.07.04 |
Смирнова П.З. | 04.05-25.05.03 | 07.08-29.08.04 |
Фокин П.Н. | 01.11-27.11.03 | 14.08-02.09.04 |
Процедура импорта этой таблицы следующая:
1) В MS EXCEL скопируйте таблицу на второй лист без заголовка. Закройте файл с сохранением в файле Отпуск.xls.
2) В MS ACCESS откройте базу Кадры.
3) Выполните команду Внешние данные → Импорт из меню Файл.
4) В списке Тип файлов выберите Microsoft Excel (*.xls) и и найдите файл, содержащий таблицу Отпуска. Нажмите кнопку Импорт.
5) В диалоговом окне выберите Лист2. Нажмите кнопку Далее >.
6) Поставьте флажок у строки «Первая строка содержит заголовки столбцов». Нажмите кнопку Далее >.
7) Выберите режим сохранения в новой таблице. Нажмите кнопку Далее >.
8) Выделяя последовательно поля таблицы, измените, если нужно, имена полей. Задайте индексирование по полю ФИО. Нажмите кнопку Далее >.
9) Выберите режим «Автоматически создать ключ». Нажмите кнопку Далее >.
10) В рамке Импорт в таблицу задайте имя таблицы Отпуск. Нажмите кнопку Готово.
Этот пример демонстрирует лишь процедуру импорта. Анализируя новую таблицу, легко заметить, что реализации учета отпусков в MS ACCESS таблица такой структуры не годится.
Прямой импорт из MS WORD невозможен. Возможен импорт из текстовых файлов типов csv, txt, sdf, в которых данные в строках разделены запятой, или пробелом, или символом табуляции, а строка заканчивается символом конца строки.