Примечание: Microsoft Access не поддерживает импорт данных Excel с примененной меткой конфиденциальности. В качестве обходного решения можно удалить метку перед импортом, а затем повторно применить метку после импорта. Дополнительные сведения см. в статье «Применение меток конфиденциальности к файлам и электронной почте в Office».
Существуют различные способы переноса данных из книги Excel в базы данных Access. Можно скопировать данные с открытого листа и вставить их в таблицу Access, импортировать лист в новую или существующую таблицу либо связать лист с базой данных Access.
В этой статье приведено подробное описание процедуры импорта или связывания данных Excel с классическими базами данных Access.
В этой статье
-
Общее представление об импорте данных из Excel
-
Импорт данных из Excel
-
Разрешение вопросов, связанных с отсутствующими и неверными значениями
-
Связывание с данными Excel
-
Разрешение вопросов, связанных со значением #Число! и другими неверными значениями в связанной таблице
Общее представление об импорте данных из Excel
Если требуется сохранить данные одного или нескольких листов Excel в Access, следует импортировать содержимое листа в новую или существующую базу данных Access. При импорте данных в Access создается их копия в новой или существующей таблице, а исходный лист Excel не изменяется.
Стандартные сценарии импорта данных Excel в Access
-
Опытному пользователю Excel требуется использовать Access для работы с данными. Для этого необходимо переместить данные из листов Excel в одну или несколько новых таблиц Access.
-
В отделе или рабочей группе используется Access, но иногда данные поступают в формате Excel, и их необходимо объединять с базами данных Access. Требуется выполнить импорт полученных листов Excel в базу данных.
-
Пользователь применяет Access для управления данными, однако получает еженедельные отчеты от остальных участников команды в виде книг Excel. Требуется организовать процесс импорта таким образом, чтобы данные импортировались в базу данных каждую неделю в заданное время.
Первый импорт данных из Excel
-
Сохранить книгу Excel в виде базы данных Access невозможно. В Excel не предусмотрена функция создания базы данных Access с данными Excel.
-
При открытии книги Excel в Access (для этого следует открыть диалоговое окно Открытие файла, выбрать в поле со списком Тип файлов значение Файлы Microsoft Office Excel и выбрать файл) создается ссылка на эту книгу, но данные из нее не импортируются. Связывание с книгой Excel кардинально отличается от импорта листа в базу данных. Дополнительные сведения о связывании см. ниже в разделе Связывание с данными Excel.
Импорт данных из Excel
В этом разделе описано, как подготовиться к операции импорта, выполнить ее и как сохранить параметры импорта в виде спецификации для повторного использования. Помните, что данные можно одновременно импортировать только из одного листа. Импортировать все данные из книги за один раз невозможно.
Подготовка листа
-
Найдите исходный файл и выделите лист с данными, которые требуется импортировать в Access. Если необходимо импортировать лишь часть данных листа, можно задать именованный диапазон, содержащий только те ячейки, которые требуется импортировать.
Определение именованного диапазона (необязательно)
-
Перейдите в Excel и откройте лист, данные из которого нужно импортировать.
-
Выделите диапазон ячеек, содержащих данные, которые необходимо импортировать.
-
Щелкните выделенный диапазон правой кнопкой мыши и выберите пункт Имя диапазона или Определить имя.
-
В диалоговом окне Создание имени укажите имя диапазона в поле Имя и нажмите кнопку ОК.
Имейте в виду, что в ходе одной операции импорта можно импортировать лишь один лист. Чтобы импортировать данные нескольких листов, операцию импорта следует повторить для каждого листа.
-
-
Просмотрите исходные данные и выполните необходимые действия в соответствии с приведенной ниже таблицей.
Элемент
Описание
Число столбцов
Число исходных столбцов, которые необходимо импортировать, не должно превышать 255, т. к. Access поддерживает не более 255 полей в таблице.
Пропуск столбцов и строк
В исходный лист или именованный диапазон рекомендуется включать только те строки и столбцы, которые требуется импортировать.
Смещ_по_строкам В ходе операции импорта невозможно фильтровать или пропускать строки.
Столбцы. В ходе операции экспорта невозможно пропускать столбцы, если данные добавляются в существующую таблицу.
Табличный формат
Убедитесь, что ячейки имеют табличный формат. Если лист или именованный диапазон включает объединенные ячейки, их содержимое помещается в поле, соответствующее крайнему левому столбцу, а другие поля остаются пустыми.
Пустые столбцы, строки и ячейки
Удалите все лишние пустые столбцы и строки из листа или диапазона. При наличии пустых ячеек добавьте в них отсутствующие данные. Если планируется добавлять записи к существующей таблице, убедитесь, что соответствующие поля таблицы допускают использование пустых (отсутствующих или неизвестных) значений. Поле допускает использование пустых значений, если свойство Обязательное поле (Required) имеет значение Нет, а свойство Условие на значение (ValidationRule) не запрещает пустые значения.
Значения ошибок
Если одна или несколько ячеек на листе или в диапазоне содержат значения ошибок, например #ЧИСЛО или #ДЕЛ, исправьте эти значения до начала операции импорта. Если исходный лист или диапазон содержит значения ошибок, соответствующее поле таблицы Access остается пустым. Дополнительные сведения о способах исправления таких ошибок см. ниже в разделе Разрешение вопросов, связанных с отсутствующими и неверными значениями.
Тип данных
Чтобы избежать ошибок во время импорта, убедитесь, что каждый исходный столбец содержит один и тот же тип данных в каждой строке. Access сканирует первые восемь строк источника, чтобы определить тип данных полей в таблице. Настоятельно рекомендуется убедиться, что первые восемь строк источника не смешивают значения различных типов данных ни в одной из столбцов. В противном случае Access может не назначить столбцу правильный тип данных.
Рекомендуется также отформатировать все исходные столбцы в Excel и назначить им определенный формат данных перед началом операции импорта. Форматирование является необходимым, если столбец содержит значения с различными типами данных. Например, столбец «Номер рейса» может содержать числовые и текстовые значения, такие как 871, AA90 и 171. Чтобы исключить отсутствующие или неверные значения, выполните указанные ниже действия.
-
Щелкните заголовок столбца правой кнопкой мыши и выберите пункт Формат ячеек.
-
На вкладке Числовой в группе Категория выберите формат. Для столбца «Номер рейса» лучше выбрать значение Текстовый.
-
Нажмите кнопку ОК.
Если исходные столбцы отформатированы, но все же содержат смешанные значения в строках, следующих за восьмой строкой, в ходе операции импорта значения могут быть пропущены или неправильно преобразованы. Сведения о разрешении этих вопросов см. в разделе Разрешение вопросов, связанных с отсутствующими и неверными значениями.
Первая строка
Если первая строка листа или именованного диапазона содержит имена столбцов, в Access можно указать, что данные первой строки должны рассматриваться в ходе операции импорта как имена полей. Если исходный лист или диапазон не содержит имен, рекомендуется добавить их в исходные данные до операции импорта.
Примечание: Если планируется добавить данные в существующую таблицу, убедитесь, что имя каждого столбца в точности соответствует имени поля. Если имя столбца отличается от имени соответствующего поля в таблице, операция импорта завершится неудачей. Чтобы просмотреть имена полей, откройте таблицу в Access в режиме конструктора.
-
-
Закройте исходную книгу, если она открыта. Если исходный файл остается открытым в ходе операции импорта, могут возникнуть ошибки преобразования данных.
Подготовка конечной базы данных
-
Откройте базу данных Access, в которой будут храниться импортируемые данные. Убедитесь, что база данных доступна не только для чтения и что есть права на ее изменение.
-или-
Если ни одна из существующих баз данных не подходит для хранения импортируемых данных, создайте пустую базу данных. Для этого выполните указанные ниже действия.
Откройте вкладку Файл, нажмите кнопку Создать и выберите пункт Пустая база данных.
-
Перед началом операции импорта следует определить, в какой таблице будут храниться данные: в новой или существующей.
Создание новой таблицы. Если необходимо сохранить данные в новой таблице, в Access создается таблица, в которую добавляются импортируемые данные. Если таблица с указанным именем уже существует, содержимое существующей таблицы перезаписывается импортируемыми данными.
Добавление в существующую таблицу. При добавлении данных в существующую таблицу строки из листа Excel добавляются в указанную таблицу.
Следует помнить, что ошибки в ходе операции добавления зачастую объясняются тем, что исходные данные не соответствуют структуре и параметрам полей в конечной таблице. Чтобы избежать таких ошибок, откройте таблицу в режиме конструктора и проверьте указанные ниже параметры.
-
Первая строка. Если первая строка исходного листа или диапазона не содержит заголовки столбцов, убедитесь, что расположение и тип данных каждого столбца соответствуют нужному полю таблицы. Если же первая строка содержит заголовки столбцов, совпадение порядка следования столбцов и полей необязательно, но имя и тип данных каждого столбца должны в точности совпадать с именем и типом данных соответствующего поля.
-
Отсутствующие или лишние поля. Если одно или несколько полей исходного листа отсутствуют в конечной таблице, их следует добавить до начала операции импорта. Если же таблица содержит поля, которые отсутствуют в исходном файле, их не требуется удалять из таблицы при условии, что они допускают использование пустых значений.
Совет: Поле допускает использование пустых значений, если его свойство Обязательное поле (Required) имеет значение Нет, а свойство Условие на значение (ValidationRule) не запрещает пустые значения.
-
Первичный ключ. Если таблица содержит поле первичного ключа, исходный лист или диапазон должен содержать столбец, содержащий значения, совместимые с полем первичного ключа, а импортированные значения ключа должны быть уникальными. Если импортируемая запись содержит значение первичного ключа, которое уже существует в таблице, отображается сообщение об ошибке.
-
Индексированные поля. Если свойство Индексировано поля таблицы имеет значение Да (без повторов), соответствующий столбец исходного листа или диапазона должен содержать уникальные значения.
Для выполнения операции импорта перейдите к указанным ниже действиям.
-
Запуск операции импорта
-
Расположение мастера импорта или связывания зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.
-
Если вы используете последнюю версию подписки Microsoft 365 Access или Access 2019, на вкладке «Внешние данные» в группе «Импорт & Link» щелкните «Создать источник данных > из файлового > Excel«.
-
Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Excel.
Примечание: Вкладка Внешние данные доступна только в том случае, если открыта база данных.
-
-
В диалоговом окне Внешние данные — Электронная таблица Excel в поле Имя файла укажите имя файла Excel, содержащего данные, которые необходимо импортировать.
-или-
Чтобы указать импортируемый файл, нажмите кнопку Обзор и воспользуйтесь диалоговым окном Открытие файла.
-
Укажите способ сохранения импортируемых данных.
Чтобы сохранить данные в новой таблице, выберите вариант Импортировать данные источника в новую таблицу в текущей базе данных. Позднее будет предложено указать имя этой таблицы.
Чтобы добавить данные в существующую таблицу, выберите параметр Добавить копию записей в конец таблицы и выберите таблицу в раскрывающемся списке. Этот параметр недоступен, если база данных не содержит таблиц.
Сведения о связывании с источником данных путем создания связанной таблицы см. ниже в разделе Связывание с данными Excel.
-
Нажмите кнопку ОК.
Будет запущен мастер импорта электронных таблиц, который поможет выполнить импорт. Перейдите к дальнейшим действиям.
Использование мастера импорта электронных таблиц
-
На первой странице мастера выберите лист, содержащий данные, которые необходимо импортировать, и нажмите кнопку Далее.
-
На второй странице мастера щелкните элемент листы или именованные диапазоны, выберите лист или именованный диапазон, который необходимо импортировать, и нажмите кнопку Далее.
-
Если первая строка исходного листа или диапазона содержит имена полей, выберите вариант Первая строка содержит заголовки столбцов и нажмите кнопку Далее.
Если данные импортируются в новую таблицу, заголовки столбцов используются в Access в качестве имен полей в таблице. Эти имена можно изменить в ходе операции импорта или после ее завершения. Если данные добавляются к существующей таблице, убедитесь, что заголовки столбцов исходного листа в точности соответствуют именам полей конечной таблицы.
Если данные добавляются к существующей таблице, перейдите к действию 6. Если данные добавляются в новую таблицу, выполните оставшиеся действия.
-
Мастер предложит просмотреть свойства полей. Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного поля. При необходимости выполните указанные ниже действия.
-
Просмотрите и измените имя и тип данных конечного поля.
В Access выполняется проверка первых восьми строк каждого столбца, чтобы определить тип данных для соответствующего поля. Если первые восемь строк столбца на листе содержат значения разных типов, например текст и числа, мастер предлагает тип данных, совместимый со всеми значениями столбца — как правило, это текстовый тип данных. Хотя можно выбрать и другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут в ходе импорта пропущены или преобразованы неправильно. Дополнительные сведения о том, как исправить неверные или отсутствующие значения, см. ниже в разделе Разрешение вопросов, связанных с отсутствующими и неверными значениями.
-
Чтобы создать индекс для поля, присвойте свойству Индексировано (Indexed) значение Да.
-
Чтобы пропустить весь исходный столбец, установите флажок Не импортировать (пропустить) поле.
Настроив параметры, нажмите кнопку Далее.
-
-
На следующем экране задайте первичный ключ для таблицы. При выборе варианта автоматически создать ключ Access добавляет поле счетчика в качестве первого поля конечной таблицы и автоматически заполняет его уникальными значениями кодов, начиная с 1. После этого нажмите кнопку Далее.
-
На последнем экране мастера укажите имя целевой таблицы. в поле Импорт в таблицу. Если таблица уже существует, в Access появится запрос на перезапись существующего содержимого таблицы. Нажмите кнопку « Да «, чтобы продолжить, или «Нет», чтобы указать другое имя целевой таблицы, а затем нажмите кнопку « Готово», чтобы импортировать данные.
Если импорт части или всех данных в Access завершится успешно, в мастере откроется страница с состоянием операции импорта. Кроме того, сведения об операции можно сохранить в виде спецификации для дальнейшего использования. Если операция завершится неудачей, появится сообщение Ошибка при попытке импорта файла.
-
Нажмите кнопку Да, чтобы сохранить сведения об операции для использования в будущем. Сохранение сведений позволяет выполнять операцию повторно без использования мастера.
Сведения о том, как сохранить спецификацию, см. в статье Сохранение параметров операции импорта или экспорта в виде спецификации.
Сведения о том, как запустить сохраненную спецификацию импорта или экспорта, см. в статье Запуск сохраненной спецификации импорта или экспорта.
Сведения о том, как запланировать выполнение задач импорта и связывания в определенное время, см. в статье Планирование спецификации импорта или экспорта.
Разрешение вопросов, связанных с отсутствующими и неверными значениями
Сообщение Ошибка при попытке импорта файла свидетельствует о том, что операция импорта завершилась неудачей. Если же после операции импорта отображается диалоговое окно, в котором предлагается сохранить сведения об операции, это означает, что данные успешно импортированы полностью или частично. В сообщении о состоянии указывается также имя таблицы, которая содержит описание всех ошибок, возникших в ходе операции импорта.
Важно: Даже если в сообщении о состоянии указано, что операция завершилась успешно, перед использованием таблицы следует просмотреть ее содержимое и структуру, чтобы убедиться в правильности всех данных.
-
Откройте целевую таблицу в режиме таблицы, чтобы убедиться, что в таблицу были добавлены все данные.
-
Откройте таблицу в режиме конструктора, чтобы проверить типы данных и другие свойства полей.
В приведенной ниже таблице описаны действия по разрешению проблем, связанных с отсутствующими или неверными значениями.
Совет: Если при устранении неполадок обнаружено лишь несколько отсутствующих значений, можно добавить их в таблицу вручную. Если же отсутствует или неправильно импортирован целый столбец либо большой объем данных, следует исправить исходный файл. После устранения всех возможных проблем повторите операцию импорта.
|
Проблема |
Решение |
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Графические элементы |
Графические элементы, такие как логотипы, диаграммы и рисунки, не импортируются. Их следует добавить в базу данных вручную после завершения операции импорта. |
||||||||||||
|
Вычисляемые значения |
Импортируются результаты вычисляемого столбца или ячейки, но не базовая формула. В ходе операции импорта можно указать тип данных, совместимый с результатами формулы, например числовой. |
||||||||||||
|
Значения TRUE или FALSE и -1 или 0 |
Если исходный лист или диапазон включает столбец, который содержит только значения TRUE или FALSE, в Access для этого столбца создается логическое поле, в которое вставляется значение -1 или 0. Если же исходный лист или диапазон включает столбец, который содержит только значения -1 и 0, в Access для этого столбца по умолчанию создается числовое поле. Чтобы избежать этой проблемы, можно изменить в ходе импорта тип данных поля на логический. |
||||||||||||
|
Многозначные поля |
При импорте данных в новую или существующую таблицу приложение Access не поддерживает многозначные поля, даже если исходный столбец содержит список значений, разделенных точками с запятой (;). Список значений обрабатывается как одно значение и помещается в текстовое поле. |
||||||||||||
|
Усеченные данные |
В случае усечения данных в столбце таблицы Access попытайтесь увеличить ширину столбца в режиме таблицы. Если не удается решить проблему с помощью этого способа, это означает, что объем данных в числовом столбце Excel слишком велик для конечного поля в Access. Например, в базе данных Access свойство FieldSize конечного поля может иметь значение Байт, а исходные данные могут содержать значение больше 255. Исправьте значения в исходном файле и повторите операцию импорта. |
||||||||||||
|
Формат отображения |
Чтобы обеспечить правильное отображение значений в режиме таблицы, может потребоваться изменить свойство Формат некоторых полей в режиме конструктора. Ниже приведены примеры.
Примечание: Если исходный лист содержит элементы форматирования RTF, например полужирный шрифт, подчеркивание или курсив, текст импортируется без форматирования. |
||||||||||||
|
Повторяющиеся значения (нарушение уникальности ключа) |
Импортируемые записи могут содержать повторяющиеся значения, которые невозможно сохранить в поле первичного ключа в конечной таблице или в поле, для которого свойству Индексировано присвоено значение Да (без повторов). Удалите повторяющиеся значения в исходном файле и повторите операцию импорта. |
||||||||||||
|
Значения дат, сдвинутые на 4 года |
Значения полей дат, импортированных с листа Excel, оказываются сдвинуты на четыре года. Excel для Windows может использовать две системы дат:
Вы можете задать систему дат в excel Options: File > Options > Advanced> Use 1904 date system. Примечание При импорте из книги XLSB всегда используется система дат 1900 независимо от параметра системы дат. Прежде чем импортировать данные, измените систему дат для книги Excel или выполните после добавления данных запрос на обновление, используя выражение [имя поля даты] + 1462 для корректировки дат. Excel для macintosh использует только систему дат 1904. |
||||||||||||
|
Пустые значения |
В конце операции импорта может отобразится сообщение об ошибке с данными, которые были удалены или потеряны во время операции, или при открытии таблицы в режиме таблицы может отобразится, что некоторые значения полей пусты. Если исходные столбцы в Excel не отформатированы или первые восемь строк источника содержат значения различных типов данных, откройте исходный лист и выполните следующие действия:
Описанные выше действия позволяют свести к минимуму количество пустых значений. В приведенной ниже таблице представлены ситуации, в которых пустые значения все же будут появляться.
|
||||||||||||
|
Значения дат, замененные числовыми значениями |
Случайные пятизначные числа отображаются вместо фактических значений дат в указанных ниже случаях.
|
||||||||||||
|
Числовые значения, замененные значениями даты |
Случайные значения даты отображаются вместо фактических числовых значений в указанных ниже случаях.
Чтобы избежать этой проблемы, замените числовые значения значениями дат в исходном столбце и повторите попытку импорта. |
Кроме того, может потребоваться просмотреть таблицу ошибок, о которой говорится на последней странице мастера, в режиме таблицы. Эта таблица содержит три поля: «Ошибка», «Поле» и «Строка». В каждой ее строке содержатся сведения об определенной ошибке, и данные в поле «Ошибка» можно использовать при разрешении вопросов.
Строки ошибок и советы по устранению неполадок
|
Ошибка |
Описание |
|---|---|
|
Обрезка полей |
Значение в поле превышает размер, заданный свойством FieldSize этого поля. |
|
Ошибка преобразования типа |
Значение на листе не соответствует типу данных поля. Это значение может быть заменено пустым или неверным значением в конечном поле. Дополнительные сведения об устранении этой проблемы см. в предыдущей таблице. |
|
Нарушение уникальности ключа |
Значение первичного ключа записи совпадает со значением, уже имеющимся в таблице. |
|
Нарушение условия на значение |
Значение не соответствует правилу, заданному для этого поля или таблицы с помощью свойства ValidationRule. |
|
Пустое значение в обязательном поле |
Данное поле не может иметь пустое значение, поскольку его свойство Обязательное поле (Required) имеет значение Да. |
|
Пустое значение в поле счетчика |
Импортируемые данные содержат пустое значение (NULL), и была выполнена попытка добавить его в поле счетчика. |
|
Неинтерпретируемая запись |
Текстовое значение содержит знак разделителя (как правило, это прямые кавычки). Если значение содержит знак разделителя, он должен содержаться в текстовом файле дважды, например: Диаметр 4 1/2″» |
К началу страницы
Связывание с данными Excel
Связав базу данных Access с данными другой программы, можно использовать инструменты запросов и отчетов Access без обслуживания копии данных Excel в базе данных.
При связывании с листом или именованным диапазоном Excel в Access создается новая таблица, связанная с исходными ячейками. Любые изменения, вносимые в исходные ячейки в Excel, отражаются в связанной таблице. При этом изменить содержимое соответствующей таблицы в Access невозможно. Если требуется добавить, изменить или удалить данные, изменения необходимо внести в исходный файл.
Стандартные сценарии связывания с листом Excel из Access
Обычно связывание с листом Excel (вместо импорта) выполняют по указанным ниже причинам.
-
Требуется хранить данные в листах Excel с возможностью использовать удобные функции запросов и отчетов Access.
-
В отделе или рабочей группе используется Access, однако приходится также работать с внешними источниками данных, такими как листы Excel. Создавать копии внешних данных нецелесообразно, однако необходимо работать с данными в Access.
Первое связывание с листом Excel
-
В Excel невозможно создать связь с базой данных Access.
-
При связывании с файлом Excel в Access создается новая таблица, которая называется также связанной таблицей. В ней отображаются данные исходного листа или именованного диапазона; при этом они не сохраняются в базе данных.
-
Данные Excel невозможно связать с существующей таблицей базы данных. Это означает, что операция связывания не позволяет добавлять данные в существующую таблицу.
-
База данных может содержать несколько связанных таблиц.
-
Все изменения данных в Excel автоматически отражаются в связанной таблице. Однако содержимое и структура связанной таблицы Access доступны только для чтения.
-
При открытии книги Excel в Access (для этого в диалоговом окне Открытие файла необходимо выбрать в поле со списком Тип файлов значение Microsoft Excel и выбрать нужный файл) в Access создается пустая база данных и автоматически запускается мастер связи с электронной таблицей.
Подготовка данных Excel
-
Найдите файл Excel и лист или диапазон, содержащий нужные данные. Если нет необходимости создавать связь со всем листом, можно определить именованный диапазон, включающий только нужные ячейки.
Создание именованного диапазона в Excel (необязательно — целесообразно лишь для связывания отдельных данных на листе)
-
Перейдите в Excel и откройте лист, в котором нужно определить именованный диапазон.
-
Выделите диапазон ячеек, содержащих данные, на которые необходимо создать ссылку.
-
Щелкните выделенный диапазон правой кнопкой мыши и выберите пункт Имя диапазона или Определить имя.
-
В диалоговом окне Создание имени укажите имя диапазона в поле Имя и нажмите кнопку ОК.
Имейте в виду, что в ходе одной операции связывания можно создать связь лишь с одним листом или диапазоном. Чтобы создать связь с несколькими местами в книге, следует повторить операцию связывания для каждого листа или диапазона.
-
-
Просмотрите исходные данные и выполните необходимые действия в соответствии с приведенной ниже таблицей.
Элемент
Описание
Табличный формат
Убедитесь, что ячейки имеют табличный формат. Если диапазон включает объединенные ячейки, их содержимое помещается в поле, соответствующее крайнему левому столбцу, а другие поля остаются пустыми.
Пропуск столбцов и строк
Во время операции связывания нельзя пропустить исходные столбцы и строки. Однако можно скрыть поля и отфильтровать записи, открыв связанную таблицу в режиме таблицы после их импорта в Access.
Число столбцов
Число исходных столбцов не должно превышать 255, т.к. Access поддерживает не более 255 полей в таблице.
Пустые столбцы, строки и ячейки
Удалите все лишние пустые столбцы и строки из листа Excel или диапазона. При наличии пустых ячеек попытайтесь добавить отсутствующие данные.
Значения ошибок
Если одна или несколько ячеек на листе или в диапазоне содержат значения ошибок, исправьте эти значения до начала операции импорта. Имейте в виду, что если исходный лист или диапазон содержит значения ошибок, в Access в соответствующее поле таблицы вставляется пустое значение.
Тип данных
Изменить тип данных и размер полей в связанной таблице невозможно. Перед началом связывания следует проверить тип данных в каждом столбце.
Настоятельно рекомендуется отформатировать все столбцы, которые содержат значения с разными типами данных. Например, столбец «Номер рейса» может содержать числовые и текстовые значения, такие как 871, AA90 и 171. Чтобы исключить отсутствующие или неверные значения, выполните указанные ниже действия.
-
Щелкните столбец правой кнопкой мыши и выберите пункт Формат ячеек.
-
На вкладке Числовой в группе Категория выберите формат.
-
Нажмите кнопку ОК.
Первая строка
Если первая строка листа или именованного диапазона содержит имена столбцов, можно указать, что приложение Access должно в ходе связывания обрабатывать данные в первой строке как имена полей. Если лист не содержит имен или какое-либо имя столбца не соответствует правилам именования полей в Access, каждому полю назначается допустимое имя.
-
-
Закройте исходный файл, если он открыт.
Подготовка конечной базы данных
-
Откройте базу данных, в которой требуется создать связь. Убедитесь, что база данных доступна не только для чтения и что у вас есть права на внесение в нее изменений.
-
Если вы не хотите хранить ссылку ни в какой из существующих баз данных, создайте пустую базу данных: перейдите на вкладку «Файл», нажмите кнопку «Создать» и выберите пункт «Пустая база данных». Обратите внимание: если вы используете Access 2007, нажмите кнопку Microsoft Office и выберите пункт Создать.
После этого можно начать операцию связывания.
Создание связи
-
Расположение мастера импорта или связывания зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.
-
Если вы используете последнюю версию подписки Microsoft 365 Access или Access 2019, на вкладке «Внешние данные» в группе «Импорт & Link» щелкните «Создать источник данных > из файлового > Excel«.
-
Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Excel.
Примечание: Вкладка Внешние данные доступна только в том случае, если открыта база данных.
-
-
В диалоговом окне Внешние данные — Электронная таблица Excel в поле Имя файла укажите имя исходного файла Excel.
-
Выберите вариант Создать связанную таблицу для связи с источником данных и нажмите кнопку ОК.
Откроется мастер связи с электронной таблицей, который поможет выполнить связывание.
-
На первой странице мастера выберите лист или именованный диапазон с нужными данными и нажмите кнопку Далее.
-
Если первая строка исходного листа или диапазона содержит имена полей, выберите вариант Первая строка содержит заголовки столбцов. В Access эти заголовки столбцов используются в качестве имен полей в таблице. Если имя столбца включает специальные знаки, его невозможно использовать как имя поля в Access. В таких случаях отображается сообщение об ошибке, в котором говорится, что полю в Access будет назначено допустимое имя. Нажмите кнопку ОК для продолжения.
-
На последней странице мастера укажите имя связанной таблицы и нажмите кнопку Готово. Если таблица с указанным именем уже существует, будет предложено перезаписать существующую таблицу или запрос. Нажмите кнопку Да, чтобы перезаписать таблицу или запрос, или кнопку Нет, чтобы указать другое имя.
Приложение Access попытается создать связанную таблицу. В случае успешного завершения операции появится сообщение Завершено связывание таблицы. Откройте связанную таблицу и просмотрите поля и данные, чтобы убедиться в их правильности.
При наличии ошибок или неверных данных необходимо устранить ошибки в исходных данных. Дополнительные сведения об устранении ошибок или неверных значений см. в следующем разделе.
К началу страницы
Разрешение вопросов, связанных со значением #Число! и другими неверными значениями в связанной таблице
Даже если появится сообщение Завершено связывание таблицы, откройте таблицу в режиме таблицы и убедитесь, что строки и столбцы содержат правильные данные.
При наличии в таблице ошибок или неверных данных необходимо выполнить действия, описанные в приведенной ниже таблице, и повторить попытку связывания. Следует помнить, что добавить значения непосредственно в связанную таблицу невозможно, т.к. она доступна только для чтения.
|
Проблема |
Решение |
|---|---|
|
Графические элементы |
Графические элементы листов Excel, такие как логотипы, диаграммы и рисунки, не могут быть включены в связь с Aсcess. |
|
Формат отображения |
Чтобы обеспечить правильное отображение значений в режиме таблицы, может потребоваться изменить свойство Формат некоторых полей в режиме конструктора. |
|
Вычисляемые значения |
В Access в соответствующем поле отображаются результаты вычисляемого столбца или ячейки, но не формула (выражение). |
|
Усеченные текстовые значения |
Увеличьте ширину столбца в режиме таблицы. Если даже после этого значение не отображается целиком, возможно, его длина превышает 255 знаков. В Access связывание возможно только для первых 255 знаков, поэтому вместо связывания следует выполнить импорт данных. |
|
Сообщение о переполнении числового поля |
Даже если таблица кажется правильной, впоследствии при выполнении запроса с использованием этой таблицы может быть выведено сообщение об ошибке Переполнение числового поля. Это может объясняться конфликтом между типом данных поля в связанной таблице и типом данных, хранящихся в этом поле. |
|
Значения TRUE или FALSE и -1 или 0 |
Если исходный лист или диапазон включает столбец, который содержит только значения TRUE или FALSE, в Access в связанной таблице для этого столбца создается логическое поле. Если же исходный лист или диапазон включает столбец, который содержит только значения -1 или 0, в Access для этого столбца по умолчанию создается числовое поле, тип данных которого невозможно изменить в таблице. Если требуется, чтобы в связанной таблице было создано логическое поле, убедитесь, что исходный столбец содержит значения TRUE и FALSE. |
|
Многозначные поля |
В Access многозначные поля не поддерживаются, даже если исходный столбец содержит список значений, разделенных точками с запятой (;). Список значений обрабатывается как одно значение и помещается в текстовое поле. |
|
#Число! |
В Access значение ошибки #Число! отображается в полях вместо данных в указанных ниже случаях.
Чтобы свести к минимуму число пустых значений в таблице, выполните указанные ниже действия.
|
|
Числовые значения, замененные значениями дат |
Если поле содержит случайные пятизначные числа, проверьте исходный столбец с числовыми значениями на наличие значений дат. Значения дат в числовых столбцах преобразуются в числа. Замените значения дат числовыми значениями и повторите попытку связывания. |
|
Значения дат, замененные числовыми значениями |
Если поле содержит случайные значения дат, проверьте исходный столбец со значениями дат на наличие числовых значений. Числовые значения в столбцах дат преобразуются в даты. Замените числовые значения значениями дат и повторите попытку связывания. |
К началу страницы
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
1 |
|
|
02.04.2012, 15:45. Показов 27433. Ответов 37
Добрый день. Это моя первая тема на подобном форуме и первый вопрос. Мне была поставлена задача создать базу данных по преподавателям и расписанию…У меня есть несколько таблиц сделанных в Excel,я хотел бы подключить их в базу данных,и сделать по ним запрос на выборку…Подскажите это возможно? И какие есть пути реализации? Просто я с таким в первые сталкиваюсь и понятия не имею как это осуществить…Или может кто-то литературу толковую по этой теме подскажет? Заранее благодарен!
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
02.04.2012, 15:54 |
2 |
|
Мне была поставлена задача создать базу данных по преподавателям и расписанию… Посмотрите
У меня есть несколько таблиц сделанных в Excel,я хотел бы подключить их в базу данных,и сделать по ним запрос на выборку… Это обязательно?
0 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
02.04.2012, 16:06 [ТС] |
3 |
|
Это обязательно? Слишком много данных придется вбивать в базу,и очень много таблиц… Смотрите у меня есть две таблицы которые содержать фамилии преподавателей и напротив своих фамилий,группы студентов у которых они читают пары, то есть расписание но вместо предметов название групп. Таблицы две потому что одна таблица на числитель,вторая на знаменатель,то есть две недели которые чередуются…К этим таблицам нужно сделать запрос на выборку по преподавателю, результат запроса должен выводить расписание преподавателя на неделю,и соответственно смотря какая это неделя,числитель или знаменатель. И мне еще одну задачу нужно решить такого же плана,но я думаю что если разберусь с этим,то вторую задачу сам решу…
1 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
02.04.2012, 16:08 |
4 |
|
Тогда причем тут Access, если Вы все делаете в Excel?
0 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
02.04.2012, 16:31 [ТС] |
5 |
|
Я всего лишь набрал таблицы в Excel,а мне нужно сделать форму с запросом на выборку,как я это реализую в Excel? Мне нужна БД с данными которые хранятся в этих таблицах,что бы по ним можно было создать эту самую выборку…
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
02.04.2012, 16:43 |
6 |
|
Ну, тогда,как вариант, связать Excel с Access-ом. 1. Создайте новую БД в Access Теперь можете работать в Аксе, но с файлом Excel.
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
02.04.2012, 18:08 [ТС] |
7 |
|
Большое спасибо. Я попробую. Если возникнут еще вопросы,я надеюсь смогу обратиться?
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
02.04.2012, 18:16 |
8 |
|
Если возникнут еще вопросы,я надеюсь смогу обратиться? Форум для этого и существует
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
03.04.2012, 11:24 [ТС] |
9 |
|
Доброе утро! Спасибо вам за совет,я подключил все необходимые мне таблицы. У меня возник еще один небольшой вопросик. Я создал форму разместил на ней некоторые компоненты,в том и числе и кнопку…Я бы хотел реализовать процедуру поиска преподавателя при нажатии этой кнопки,При чем поиск из таблици в соответствии с выбраным значением выпадающего списка,со значениями «Числитель, Знаменатель»… То есть сначала выбиралась таблица по которой будет осуществляться поиск,и соответственно сам поиск…Если такой вопрос уже задавался,то возможо вы мне укажите путь на эту тему,а если нет то розьясните пожалуйста. Заранее признателен
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
03.04.2012, 11:28 |
10 |
|
Пример(желательно в mdb) приложить можете?(и файл Excel).
0 |
|
266 / 266 / 4 Регистрация: 01.11.2011 Сообщений: 612 |
|
|
03.04.2012, 12:06 |
12 |
|
БД заархивируйте любым архиватором, и выложите архив,
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
03.04.2012, 13:15 [ТС] |
13 |
|
Teachers.zip Спасибо за совет,вот то что я наделал…
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
03.04.2012, 17:13 |
14 |
|
Sewer, поместите два Excel файла(которые в папке) на диск C.
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
03.04.2012, 17:48 [ТС] |
15 |
|
Спасибо вам огромное!!! Правда сильно выручили,я постараюсь разобраться в проделанной вами работе для выполнения похожего задания. Еще раз огромное вам спасибо
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
03.04.2012, 18:22 |
16 |
|
постараюсь разобраться 1. При открытии формы(frmЗнаменатель или frmЧислитель ) добавляем записи из файлов Excel в таблицы (tblЗнаменатель или tblЧислитель соответственно) Не по теме: P.S. в таблицы можно и не заносить данные, так как списки берут значения сразу из запросов q1 и q2.
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
||
|
04.04.2012, 11:13 [ТС] |
17 |
|
|
Добрый день. Спасибо за советы,я вот как раз пытаюсь создать две таблицы но уже по аудиториям,я сделал две Excel таблицы как у вас, теперь у меня вопрос как создать их в БД? У вас там две таблицы…У меня вопрос как вы таблицы Excel подключили к этим таблицам? Потому что простой способ привязки Excel таблиц который вы мне описали в начале,по всей видимости здесь не при чем…Мне нужно сделать две Access таблицы на манер ваших,и как то связать их с данными из Excel таблиц? Подскажите пожалуйста как. Прилагаю две таблицы по аудиториям которые создал,посмотрите пожалуйста все ли в порядке с полями,вдруг где-то ошибся. Заранее признателен.[ATTACH]q4.xls[/ATTACH] Вложения
0 |
|
Agapov_stas 3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
||||
|
04.04.2012, 11:19 |
18 |
|||
|
Таблицы там не причем(Вы видимо не прочитали мое дополнение в последнем моем сообщении).
В котором указываю диапазон ячеек с данными([Лист3$A2:AA133]) в определенном листе Excel файла. Таблицами я показал, что можно и импортнуть данные из Excel в таблицу, и потом работать сразу с таблицей.
1 |
|
1 / 1 / 0 Регистрация: 02.04.2012 Сообщений: 21 |
|
|
04.04.2012, 12:07 [ТС] |
19 |
|
Спасибо большое! Сейчас попробую создать два запроса и две формы… Добавлено через 32 минуты
0 |
|
3353 / 1771 / 83 Регистрация: 05.08.2010 Сообщений: 4,471 |
|
|
04.04.2012, 12:08 |
20 |
|
Запросы создал,а вот с формами возникают некоторые проблемы… Приложи пример..
0 |
Далее описано, как подключиться к базе данных из программ Excel 2008 или 2011 для Mac:
1. Выберите «Данные» (Data)1: «Импорт внешних данных» (External Data) => «Новый запрос к базе данных» (New Database Query). Excel запустит программу Microsoft и выведет диалоговое окно «iODBC Data Source Choosers».
2. Выберите источник — базу данных Access и нажмите ОК. Программа Microsoft Query выведет окно нового запроса.
3. Постройте запрос. Не буду вдаваться в детали: просто дважды нажмите на таблицу, дважды — на колонку, чтобы добавить ее в запрос, добавьте параметры отбора и сортировки и повторите эти действия по мере необходимости.
4. Нажмите на значок «Вернуть данные» (Return Data). Excel предложит вам указать место для сохранения данных.
5. Укажите такое место и нажмите ОК. Excel подключится к базе данных Access, выполнит запрос и выведет данные.
|
← Для чего и как запускать Windows на компьютере Mac? |
Создание источника данных Access → |
|---|
Новые статьи:
- —
- —
- —
- —
- —
Предыдущие статьи:
- —
- —
- —
- —
- —
Загрузить PDF
Загрузить PDF
Access – это реляционная система управления базами данных, в которую можно импортировать одну или несколько таблиц Excel и согласовать их однородные элементы. Более того, при помощи Access можно собрать и проанализировать большое количество данных, так как один файл Access включает несколько таблиц Excel. Но для начала необходимо импортировать данные из Excel в Access; это можно сделать, выполнив несколько основных действий.
-
1
На компьютере запустите Excel и Access. Необходимо купить и скачать пакет Microsoft Office, который содержит и Excel,[1]
и Access. Это можно сделать на официальном сайте компании Microsoft.- Установив пакет Microsoft Office, в Windows нажмите «Пуск» – «Все программы».[2]
- Нажмите «Microsoft Office» и в открывшемся меню выберите «Access» (или «Excel»). Скорее всего, у вас уже есть таблица Excel, которую вы скачали или получили по электронной почте. При помощи программы Excel вы сможете открыть такую таблицу.
- Установив пакет Microsoft Office, в Windows нажмите «Пуск» – «Все программы».[2]
-
2
Перед импортом данных в Access обработайте таблицу Excel. Это сильно облегчит задачу по переносу данных из Excel в Access. Суть в том, что в разных таблицах определенные данные должны иметь один формат.[3]
- Для начала удостоверьтесь, что первая строка каждой импортируемой таблицы содержит названия (заголовки) столбцов – названия должны ясно характеризовать данные, занесенные в столбцы.[4]
Например, если столбец содержит фамилии людей, назовите его «Фамилии». Давайте точные названия, чтобы облегчить процесс согласования заголовков столбцов в разных таблицах. - В Access вы можете согласовать однородные элементы в двух и более таблицах Excel. Например, у вас есть таблица Excel с данными по заработной плате, которая содержит ФИО (фамилия, имя, отчество), адреса и суммы заработной платы. Допустим, вы хотите сопоставить эту таблицу с другой таблицей, включающей данные о пожертвованиях на некий проект (ФИО, адреса и суммы пожертвований). В Access вы можете согласовать заголовки столбцов в разных таблицах. В нашем примере согласуйте названия столбцов с фамилиями, чтобы выяснить, какие люди присутствуют в обеих таблицах.
- Просмотрите каждую таблицу Excel и убедитесь, что данные внесены в одном формате; в противном случае обработайте таблицу так, чтобы привести данные к одному формату.[5]
Такой подход к формату данных отражает слово «реляционная» (от relation – зависимость, связь) в описании Access. Например, если в зарплатной таблице в столбце «ФИО» введены фамилии, имена и отчества, а в таблице о пожертвованиях в столбце «ФИО» – только фамилии и имена, то Access не считает данные столбцы однородными (то есть не сможет согласовать их). Поэтому одинаковыми должны быть как названия столбцов, так и формат данных, которые содержатся в этих столбцах.
- Для начала удостоверьтесь, что первая строка каждой импортируемой таблицы содержит названия (заголовки) столбцов – названия должны ясно характеризовать данные, занесенные в столбцы.[4]
-
3
Разделите данные в столбцах таблицы Excel. Для того чтобы сделать элементы таблицы Excel однородными (для их импорта в Access), разделите информацию в соответствующих столбцах.[6]
- Например, вы можете поместить фамилию в один столбец, имя – во второй, а отчество – в третий. Аналогичным образом поступите с соответствующим столбцом во второй таблице. Теперь в Access вы сможете согласовать, например, фамилии из одной таблицы с фамилиями из другой и найти людей, которые присутствуют в обеих таблицах.
- Для разделения данных в столбце Excel выделите нужный столбец. В панели инструментов нажмите «Данные». Затем нажмите «Текст по столбцам». Рекомендуется выбрать опцию «С разделителями». Затем нажмите «Далее».
-
4
Для разделения данных, расположенных в одном столбце, следуйте подсказкам Мастера текстов. Выполните следующие действия:
- Выберите символ-разделитель между данными. Помните, что информация, занесенная в ячейку, разделяется каким-то символом. Как правило, таким символом-разделителем является пробел, запятая или точка с запятой. В подавляющем большинстве случаев информация разделяется пробелом. Например, в ячейку занесена следующая информация: Иванов Иван Иванович. Здесь Фамилия отделена от имени пробелом, а имя отделено от отчества также пробелом. В этом случае в окне Мастера текстов выберите опцию «Пробел».
- Нажмите «Далее». Затем нажмите «Готово». Столбец с ячейкой «Иванов Иван Иванович» разделится на три столбца. Теперь вы можете присвоить имя каждому из трех новых столбцов, то есть назвать их как «Фамилия», «Имя», «Отчество». Перед разделением информации справа от разделяемого столбца вставьте несколько пустых столбцов, чтобы Excel занес в них разделенные данные (а не в уже заполненные столбцы с другими данными).
Реклама
-
1
Запустите Access. Для этого нажмите «Пуск» – «Microsoft Office» – «Microsoft Access». Для импорта данных из Excel создайте новую базу данных Access.
- Для создания базы данных в окне программы Access нажмите «Новая база данных».
- Если хотите, присвойте созданной базе данных имя. Затем нажмите «Создать».
-
2
Импортируйте таблицу Excel в Access. Теперь вы можете импортировать данные из одной или нескольких таблиц Excel в Access.
- На панели инструментов (в окне программы Access) нажмите «Внешние данные».[7]
В некоторых версиях Access на панели инструментов нажмите «Файл» – «Внешние данные».[8]
- В разделе «Имя файла» нажмите «Обзор», чтобы найти нужную таблицу Excel.
- Поставьте флажок у опции «Импортировать исходные данные в новую таблицу в текущей базе данных» (эта опция активирована по умолчанию).
- Найдя нужную таблицу, щелкните по ней. Затем нажмите «OK». Откроется мастер импорта данных из Excel в Access.
Реклама
- На панели инструментов (в окне программы Access) нажмите «Внешние данные».[7]
-
1
Выполните указания мастера импорта данных. Это необходимо сделать для завершения процесса импорта таблицы Excel в Access.
- Выберите лист в таблице Excel, данные которого вы хотите импортировать в Access. Порой это очень легко, потому что таблица содержит всего один лист. Но иногда одна таблица Excel включает множество листов, вкладки которых отображаются в нижней части окна программы Excel; в этом случае нужно указать определенный лист. Затем нажмите «Далее».
- Отобразится окно с вопросом, содержит ли первая строка таблицы заголовки столбцов. Здесь имеются в виду названия, характеризующие данные в каждом столбце (например, фамилия, адрес, сумма заработной платы и так далее). Прекрасно, если до этого вы обработали таблицу Excel так, что первая строка содержит строго определенные названия столбцов; в этом случае отметьте опцию, что первая строка содержит заголовки столбцов. Затем нажмите «Далее».
- Если в первой строке заголовков столбцов нет, в открывшемся окне отобразится вопрос о том, хотите ли вы присвоить имена «полям» (в Access под «полями» понимаются заголовки столбцов). Если до этого вы не вводили названия столбцов, сделайте это сейчас.
-
2
Завершите импорт данных. Вам осталось выполнить всего несколько действий. В открывшемся окне определите первичный ключ (если хотите).
- Вы можете, но не обязаны, делать это. Первичный ключ – это уникальный номер, присваиваемый каждой строке с данными; это может пригодиться при сортировке данных. Затем нажмите «Далее».[9]
- В последнем окне отобразится имя по умолчанию. Вы можете переименовать таблицу Excel (по завершении импорта она отобразится в виде таблицы Access на левой стороне экрана).
- Нажмите «Импорт», а затем нажмите «Закрыть». Таблица отобразится на левой стороне экрана; это значит, что она полностью импортирована в Access.
- Если вы хотите согласовать несколько баз данных, проделайте вышеописанные действия для импорта одной или нескольких дополнительных таблиц Excel. Теперь вы можете приступить к согласованию данных в Access.
Реклама
- Вы можете, но не обязаны, делать это. Первичный ключ – это уникальный номер, присваиваемый каждой строке с данными; это может пригодиться при сортировке данных. Затем нажмите «Далее».[9]
Предупреждения
- Имейте в виду, что если версия Excel, в которой была создана таблица, отличается от версии Access, вы можете столкнуться с проблемами при импорте данных.
- Повторим еще раз: перед импортом данных обработайте таблицу Excel. То есть обратите внимание на формат данных, с которыми вы собираетесь работать.
- Сделайте копию исходной таблицы, чтобы в крайнем случае вы смогли импортировать данные еще раз.
- В Access можно импортировать не более 255 столбцов.[10]
Реклама
Об этой статье
Эту страницу просматривали 45 293 раза.
Была ли эта статья полезной?
Содержание
- Vba access подключение к excel
- Vba access подключение к excel
- Vba access подключение к excel
- How To – Connect Excel To Access – Database Using VBA
- How to Connect Access Database in Excel Macros?
- Excel To Access Connection – Simplest Code
- Метод DoCmd.TransferSpreadsheet (Access)
- Синтаксис
- Параметры
- Примечания
- Пример
- Поддержка и обратная связь
Vba access подключение к excel
How To – Connect Excel To Access – Database Using VBA
Learn how to connect Access database to Excel using VBA macro code. Thus uses ADODB connections methods to connect & query MDB Access database.
How to Connect Access Database in Excel Macros ?
Updating Excel Spreadsheet from Access Database using this step by step Excel VBA Access Macro code is just that simple. We are going to use a ADODB connection in this sample code.
Just copy paste this Excel VBA Access MDB conenction code to your VBA Project.
Excel To Access Connection – Simplest Code
Just change these two things in the code. It is enough for this to work better.
Database path – sDBPath : This should have the exact folder path & MDB Access file name that is being accessed with this code.
Query String – sQuery : The SQL query in this variable should match the Database Table & the fields exactly as how it is defined in the MDB database.
Once these two fields are edited , then this code will perfectly fine in a Excel VB Editor.
‘Code by author@officetricks.com (or) kumarapush777 (Fiverr)
‘Visit http://officetricks.com to get more Free & Fully Functional VBA Codes
‘Make Reference to Microsoft AxticX Data Objects Library
Dim dbConn As ADODB.Connection , dbRecSet As ADODB.Recordset
Dim sConnString As String , sQuery As String
Dim sDBPath As String
‘Define MDB ACCESS file path
‘SQL Query String
sQuery = «SELECT CustomerID, CustFirstName , CustLastName from Customers;»
‘ADODB Conenction String to initiate connection with MDB ACCESS
sConnString = «Provider=Microsoft.ace.OLEDB.12.0; Data Source=» & sDBPath & «;»
Set dbConn = New ADODB.Connection
dbConn.Open ConnectionString := sConnString
‘Execute SQL Query & Get Records matching the query to recordset
Set dbRecSet = New ADODB.Recordset
dbRecSet.Open Source := sQuery , ActiveConnection := dbConn
‘If Query Returned Values, Read them one by one
If ( dbRecSet.RecordCount <> 0 ) Then
Do While Not dbRecSet.EOF
MsgBox dbRecSet.Fields ( 1 ). Value
‘Close Connection & RecordSet
Set dbRecSet = Nothing
Set dbConn = Nothing
Make sure that the MDB database Table has correct field names as specified in the query. Also it has enough data.
Note : Before executing this code , from your VB Edifor go to Tools in the menu -> References & add a reference to “Microsoft ActiveX Data Objects Library”. This is to make sure that ADODB object can be created from within the VBA Macro code.
The loop after that is present after the recordset.open command will get records from the table one by one , till end of the table. Make sure the replace the msgbox command with some assignment. If not you will end up in giving too many ‘OK’ clicks for the message box that pops up for every record fetch.
Apart from recordset.Movenext , there are other commands available to move the cursor or current position to First or last record or to any desired point as well.
In the next tutorial , we will see how to query Access database & load them to a list box in userform.
Источник
Vba access подключение к excel
Учимся работать с базами данных Access из макросов Excel
Кратко о структуре базы данных. База состоит из таблиц. Таблица — из строк. Строка — из полей. В полях могут храниться данные разных форматов. Форматы определяются в момент создания таблицы. Создать базу и таблицы в ней можно в Access, а можно и средствами макроса прямо из Excel.
Чтобы Access смог обращаться к базам Access, нужно подключить библиотеку DAO. Для этого в редакторе Visual Basic выбираем меню «Tools->References», открывается окошко, в котором нужно поставить галочку напротив Microsoft DAO 3.6 Object Library.
Теперь делаем так:
‘Объявляем переменные
Dim dbs As DAO.Database ‘База данных
Dim rs As DAO.Recordset ‘Запрос к базе данных
‘Открываем базу
Set dbs = DAO.OpenDatabase(«c:database.mdb»)
‘Выполняем запрос к базе данных
Set rs = dbs.OpenRecordset(«SELECT * FROM тбл_тов WHERE ID_тов>2»)
Тут объясню подробнее. Запросы к базе выполняются на языке SQL. Пока рассмотрим только одну команду этого языка — SELECT. Эта команда выбирает из таблицы строки, удовлетворяющие заданному условию. Там, где у нас стоит звездочка, можно указать названия полей, которые будут присутствовать в ответе. В нашем случае будет возвращаться вся строка полностью. После слова FROM идет название таблицы, из которой идет выбор строк. Таблиц в базе может быть много. В нашем случае это тбл_тов — таблица товаров. После слова WHERE указывается условие, по которому отбираются строки. У нас условие такое: если поле ID_тов > 2, то строка включается в ответ. Ответ получается в переменной rs, которая имеет тип Recordset. Recordset — это временная таблица, сформированная из строк, удовлетворяющих условию запроса.
‘Если ничего не найдено — выдаем сообщение и выходим
If RS.RecordCount = 0 Then
MsgBox ( «По вашему запросу ничего не найдено» )
Do While Not RS.EOF ‘цикл выполняется пока не достигнута последняя строка в таблице ответа
‘Присваиваем ячейкам таблицы значения из базы
Cells ( i , 2 ). Value = RS.Fields ( «назв_тов» )
Cells ( i , 1 ). Value = RS.Fields ( «ID_тов» )
‘переходим к следующей строке во временной таблице ответа
‘Закрываем временную таблицу
‘Очищаем память. Если этого не сделать, то таблица так и останется в памяти до закрытия рабочей книги.
Источник
Vba access подключение к excel
Подключение из Excel к Access через VBA
Полезная функция по подключению из Excel к Access (предварительно надо подключить библиотеку MS ActiveX Data Objects 2.8 Library, как показано на картинке). Проверено — работает.
VBA Добавление Reference
Public Sub test_db()
ConnectionString = «Provider=Microsoft.ACE.OLEDB.12.0; Data Source=» & ActiveWorkbook.Path & «Database4.accdb; Jet OLEDB:Database;»
Dim con As New ADODB.Connection
On Error GoTo not_table
con.Execute («SELECT TOP 1 * FROM Customers»)
Вам нужно использовать статический курсор. Для этого вам нужно явно создать объект RecordSet, вот так:
Set objRS = Server . CreateObject ( «ADODB.Recordset» )
objRS . CursorLocation = adUseClient
objRS . Open «SELECT * FROM » & viewName & «;» , objConn , adOpenStatic , adLockReadOnly , adCmdText
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.Open «SELECT * FROM » & viewName & «;», objConn, adOpenStatic,adLockReadOnly, adCmdText
Неявно созданные RecordSets имеют серверные курсоры, что приводит к возвращению значения -1.
NOTE: click here to see superior alternatives to .RecordCount.
RecordCount returns -1
The use of the ADO Recordset’s .RecordCount property requires either the use of:
- Static or Keyset server-side cursors or
- A client-side cursor (which returns a Static cursor)
(Note: some OLEDB Providers will return the correct recordcount with an adOpenDynamic cursor, others will not).
By default Recordsets are opened server-side, and with an adOpenForwardOnly cursor. Attempting to access the .RecordCount property with this type of cursor will return -1.
The easiest way to fix this is to change the cursor type to adOpenStatic. Doing this requires you to explicitly create a recordset object:
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.Open strSQL, objConn, adOpenStatic, adLockReadOnly, adCmdText
Attempting to implicitly create a recordset, eg like this:
Set objRS = objConn.execute(strSQL)
will not work, as the implicitly created recordset will have a default adOpenForwardOnly cursor.
As mentioned above, the alternative method is to use a client-side cursor. The client referred in this case is the OLEDB Cursor Service.
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.CursorLocation = adUseClient
objRS.Open strSQL, objConn,,adLockReadOnly, adCmdText
In order to be able to use server-side cursors and .Recordcount, the Recordset object must support either Approximate Positioning or Bookmarking. There has been discussion on the ActiveServerPages list to the effect that the MS Oracle OLEDB Provider (or earlier versions of this provider) do not support either Approximate Positioning or Bookmarking, hence require client-side cursors in order for .RecordCount to work.
The use of ADO constants requires you to define them. You can get information on doing this here . For more information on the Recordset’s .Open method click here .
Источник
How To – Connect Excel To Access – Database Using VBA
How to Connect Access Database in Excel Macros?
Updating Excel Spreadsheet from Access Database using this step by step Excel VBA Access Macro code is just that simple. We are going to use a ADODB connection in this sample code.
Just copy paste this Excel VBA Access MDB conenction code to your VBA Project.
Excel To Access Connection – Simplest Code
Just change these two things in the code. It is enough for this to work better.
- Database path – sDBPath : This should have the exact folder path & MDB Access file name that is being accessed with this code.
- Query String – sQuery : The SQL query in this variable should match the Database Table & the fields exactly as how it is defined in the MDB database.
Once these two fields are edited, then this code will perfectly fine in a Excel VB Editor.
Make sure that the MDB database Table has correct field names as specified in the query. Also it has enough data.
Note: Before executing this code, from your VB Edifor go to Tools in the menu -> References & add a reference to “Microsoft ActiveX Data Objects Library”. This is to make sure that ADODB object can be created from within the VBA Macro code.
The loop after that is present after the recordset.open command will get records from the table one by one, till end of the table. Make sure the replace the msgbox command with some assignment. If not you will end up in giving too many ‘OK’ clicks for the message box that pops up for every record fetch.
Apart from recordset.Movenext, there are other commands available to move the cursor or current position to First or last record or to any desired point as well.
In the next tutorial, we will see how to query Access database & load them to a list box in userform.
Источник
Метод DoCmd.TransferSpreadsheet (Access)
Метод TransferSpreadsheet выполняет действие TransferSpreadsheet в Visual Basic.
Синтаксис
выражение.TransferSpreadsheet (TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA)
выражение: переменная, представляющая объект DoCmd.
Параметры
| Имя | Обязательный или необязательный | Тип данных | Описание |
|---|---|---|---|
| TransferType | Необязательный | AcDataTransferType | Нужный тип переноса. Значение по умолчанию — acImport. |
| SpreadsheetType | Необязательный | AcSpreadSheetType | Тип электронной таблицы для импорта, экспорта или связи. |
| TableName | Необязательный | Variant | Строковое выражение, являющееся именем таблицы Office Access, предназначенной для импорта данных электронной таблицы, экспорта данных электронной таблицы или связывания данных электронной таблицы, или запрос на выборку Access, результаты которого нужно экспортировать в электронную таблицу. |
| FileName | Необязательный | Variant | Строковое выражение, являющееся именем и путем электронной таблицы для импорта, экспорта или связывания. |
| HasFieldNames | Необязательный | Variant | Используйте значение True (1), чтобы использовать первую строку электронной таблицы в качестве имен полей при импорте или связывании. Используйте значение False (0), чтобы считать первую строку электронной таблицы обычными данными. Если оставить этот аргумент пустым, предполагается, что используется значение по умолчанию (False). При экспорте таблицы или данных запроса на выборку Access в электронную таблицу имена полей записываются в первую строку электронной таблицы независимо от введенного значения этого аргумента. |
| Range | Необязательный | Variant | Строковое выражение, являющееся допустимым диапазоном ячеек или именем диапазона в электронной таблице. Этот аргумент применяется только для импорта. Чтобы импортировать электронную таблицу целиком, оставьте этот аргумент пустым. При экспорте в электронную таблицу необходимо оставить этот аргумент пустым. Если ввести диапазон, экспорт завершится сбоем. |
| UseOA | Необязательный | Variant | Этот аргумент не поддерживается. |
Примечания
Используйте метод TransferSpreadsheet для импорта или экспорта данных между текущей базой данных Access или проектом Access (ADP) и файлом электронной таблицы. Вы также можете связать данные в электронной таблице Excel с текущей базой данных Access. Это позволит просматривать и изменять данные электронной таблицы с помощью Access, при этом не теряя возможность полного доступа к ним в Excel. Кроме того, вы можете связать данные в файле электронной таблицы Lotus 1-2-3, но они будут доступны в Access только для чтения.
Также можно использовать объекты данных ActiveX (ADO) для создания связи с помощью свойства ActiveConnection для объекта Recordset.
Пример
В следующем примере импортируются данные из указанного диапазона электронной таблицы Lotus Newemps.wk3 в таблицу Employees (Сотрудники) Access. В качестве имен полей используется первая строка электронной таблицы.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Источник
Подключение из Excel к Access через VBA
Время создания: 10.10.2019 07:05
Текстовые метки: Connect Excel To Access, ADO, Connection, Recordset, Excel-Access, CursorLocation, RecordCount
Раздел: !Закладки — VBA — Access — ADO
Запись: xintrea/mytetra_db_adgaver_new/master/base/1570680318sot44eyn6o/text.html на raw.githubusercontent.com
|
|
Подключение из Excel к Access через VBA
Полезная функция по подключению из Excel к Access (предварительно надо подключить библиотеку MS ActiveX Data Objects 2.8 Library, как показано на картинке). Проверено — работает.
VBA Добавление Reference
Public Sub test_db()
ConnectionString = «Provider=Microsoft.ACE.OLEDB.12.0; Data Source=» & ActiveWorkbook.Path & «Database4.accdb; Jet OLEDB:Database;»
Dim con As New ADODB.Connection
con.Open ConnectionString
On Error GoTo not_table
con.Execute («SELECT TOP 1 * FROM Customers»)
con.Close
Exit Sub
not_table:
con.Close
End Sub
https://coderoad.ru/30364090/%D0%A1%D1%87%D0%B5%D1%82%D1%87%D0%B8%D0%BA-%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D0%BE%D0%B2-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D0%B5%D0%B9-%D0%B2%D1%81%D0%B5%D0%B3%D0%B4%D0%B0-%D0%B2%D0%BE%D0%B7%D0%B2%D1%80%D0%B0%D1%89%D0%B0%D0%B5%D1%82-%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-1
Вам нужно использовать статический курсор. Для этого вам нужно явно создать объект RecordSet, вот так:
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.CursorLocation = adUseClient
objRS.Open «SELECT * FROM « & viewName & «;», objConn, adOpenStatic,adLockReadOnly, adCmdText
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.CursorLocation = adUseClient
objRS.Open «SELECT * FROM » & viewName & «;», objConn, adOpenStatic,adLockReadOnly, adCmdText
Неявно созданные RecordSets имеют серверные курсоры, что приводит к возвращению значения -1.
Для получения дополнительной информации: http://www.adopenstatic.com/faq/recordcounterror.asp
http://www.adopenstatic.com/faq/recordcounterror.asp
NOTE: click here to see superior alternatives to .RecordCount.
RecordCount returns -1
The use of the ADO Recordset’s .RecordCount property requires either the use of:
- Static or Keyset server-side cursors or
- A client-side cursor (which returns a Static cursor)
(Note: some OLEDB Providers will return the correct recordcount with an adOpenDynamic cursor, others will not).
By default Recordsets are opened server-side, and with an adOpenForwardOnly cursor. Attempting to access the .RecordCount property with this type of cursor will return -1.
The easiest way to fix this is to change the cursor type to adOpenStatic. Doing this requires you to explicitly create a recordset object:
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.Open strSQL, objConn, adOpenStatic, adLockReadOnly, adCmdText
Attempting to implicitly create a recordset, eg like this:
Set objRS = objConn.execute(strSQL)
will not work, as the implicitly created recordset will have a default adOpenForwardOnly cursor.
As mentioned above, the alternative method is to use a client-side cursor. The client referred in this case is the OLEDB Cursor Service.
Set objRS = Server.CreateObject(«ADODB.Recordset»)
objRS.CursorLocation = adUseClient
objRS.Open strSQL, objConn,,adLockReadOnly, adCmdText
In order to be able to use server-side cursors and .Recordcount, the Recordset object must support either Approximate Positioning or Bookmarking. There has been discussion on the ActiveServerPages list to the effect that the MS Oracle OLEDB Provider (or earlier versions of this provider) do not support either Approximate Positioning or Bookmarking, hence require client-side cursors in order for .RecordCount to work.
The use of ADO constants requires you to define them. You can get information on doing this here. For more information on the Recordset’s .Open method click here.
Back to FAQ Listing
Нет, вы не совсем меня поняли…
Хранить данные в excel вообще не нужно, нужно хранить в базе access.
Смотрите что я хочу…
Есть предположим кнопочка в excel которая выполняет вот такой макрос
Sub GetMyData()
Const strDb As String = «C:Documents and SettingsAdminРабочий столТАНЕКО.mdb»
Const strQry As String = «SELECT * from Главная»
Dim rs As ADODB.Recordset
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Open «Provider=Microsoft.Jet.OLEDB.4.0; Data Source=» & strDb & «;»
Set rs = New ADODB.Recordset
With rs
Set .ActiveConnection = cn
.Open strQry
End With
Worksheets(«Лист1»).Range(«A1»).CopyFromRecordset rs
rs.Close: cn.Close
Set rs = Nothing: Set cn = Nothing
End Sub
Он выводит из базы access все данные в таблички excel, там пользователи что то изменяют или добавляют, и ЗАТЕМ МНЕ НУЖНО ЭТО ВСЕ ВЕРНУТЬ В ACCESS, как это сделать???
Еще одно преимущество, чем это программа Microsoft предложения для своих пользователей в том, что он позволяет им импортировать и связывать данные из книги Excel с базой данных de данные О компании очень просто. Имейте в виду, что обе программы используются для расчет данных, это так что может потребоваться много раз, чтобы передавать информацию из одной программы в другую.
Эту процедуру можно проводить по-разному: копирование данных с открытого листа и вставка их в рабочий лист Access, либо важный новости Таблица, либо создание ссылка на из базы данных Access. Следует помнить, что когда данные находятся импортный, у пользователя есть возможность манипулировать ими редактирование , а процесс связь позволяет только их чтение.
В соответствии со всем этим и важностью выполнения данной процедуры, мы вы показать здесь как начать импорт и связывание данных из книги Excel с базой данных de Данные доступа быстро и легко. Для этого подробно следуйте всему, чему мы вас научим ниже.
перед тем начать эту процедуру, это очень важно учитывать определенные соображения. Как правило, при выполнении этой процедуры разные типы сценариев может быть представлен что это очень важно знать , а также принять во внимание некоторые соображения если вы впервые импортируете данные из Excel в Access.
Для этого следуйте каждому из этих пунктов, которым мы научим вас ниже:
Возможные распространенные сценарии импорта данных из Microsoft Excel в Microsoft Access
- Возможно, что пользователь работает с Excel от долго , но чтобы продолжать развиваться и расширять свои знания, он должен использовать доступ чтобы можно работа с базами данных. Как хочешь переместите свои электронные таблицы в одну или несколько существующих или новых баз данных Access.
- Также возможно отдел или рабочая группа для непрерывной работы с Access, но получать информацию от некоторых клиентов через Excel. Это означает, что пользователь хочет переместить ле Таблицы Excel в базу данных Access , для этого он должен начать импортировать каждый из этих листов по мере их получения.
- Во многих случаях О компании используется для управления различными данными, но большая часть полученных данных осуществляется через таблицы Excel . В этом случае пользователь должен ускорить процедуру импорта, чтобы чтобы все данными можно управлять в указанное время.
Если это первый раз, когда пользователь импортирует данные из Excel
- Важно отметить, что нет возможности сохранить книгу Excel как базу данных Access . В этом случае, Excel не предлагает никаких функций, которые позволяют создать базу данных Access из данных Microsoft Excel.
- Когда вы открываете Книга Microsoft Excel в Access, il создает ссылку на книгу вместо импорта данных. Следует отметить, что ссылка на книгу считается чем-то существенным и отличным от процесса импорта.
Какие данные я могу импортировать из книги Excel в базу данных Access?

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

Учитывая все, что было упомянуто ранее в статье, следующее объясняет как начать подготовку и запуск импорта и связывания книги Excel с Microsoft Access.
Для этого вы должны подробно выполнить каждый из шагов, которые мы объясним ниже:
Импортировать данные в Excel
Первый метод, которому мы научим вас дальше, — это импортировать данные в Excel, это важно помнить, что процесс импорта и связывания совершенно другой .
Поэтому выполните каждый из следующих шагов, чтобы завершить эту процедуру:
Подготовьте электронную таблицу
На этом этапе первое, что нужно сделать, это найти исходный файл и выберите электронная таблица содержащий данные, которые вы хотите импортировать в Access. Если ты не хочешь переносить весь контент, который там появляется , но частично вы можете начать определить именованный диапазон который включает только те ячейки, которые вы действительно хотите импортировать.
Эти диапазоны можно определить следующим образом:
- Первое, что нужно сделать, это войти в Excel и открыт для этого электронная таблица который содержит информацию, которую вы хотите импортировать.
- Следующим шагом будет выбор пляжа. содержащие данные, которые вы хотите импортировать.
- Теперь вам нужно щелкнуть правой кнопкой мыши по выбранному диапазону и выбрать там опцию. «Присвойте название диапазону» ou «Определите имя».
- Наконец, в окне «Новое имя» , вы должны указать имя диапазона в опции «Фамилия» затем нажмите «ЛАДНО».
Здесь нужно иметь в виду, что нельзя импортер qu’une одиночный лист de исчисление как во время процедура импорта , это означает, что чтобы импортировать несколько листов Excel, Необходимо будет повторить эту процедуру для каждого из листов.
Вам следует внимательно просмотреть исходные данные и предпринять действия, описанные ниже:
- Число столбцов: имейте в виду, что номер исходного столбца для импорта не может быть больше 255 полей в таблице.
- Формат таблицы: важно, чтобы ячейки были в формате таблицы, на случай рабочий лист включает комбинированные ячейки , то содержимое ячейки будет помещено в поле, соответствующее колонка la левее а для других поля остаются пустыми.
- Игнорировать столбцы и строки: обычно вы включаете только те столбцы и строки, которые хотите импортировать в рабочий лист. Чтобы «Линии», ты не можешь фильтровать или пропускать строки во время процедуры импорта , а для «Колонны», они не могут быть пропущено во время операции если вы решите добавить данные в существующую таблицу.
- Пустые ячейки и столбцы: ты можешь удалите с листа все ненужные строки и столбцы. Если он содержит пустые ячейки, вы можете добавить необходимые данные.
- Значения ошибок: Возможно, что одна или несколько ячеек таблицы содержат значения ошибок, наиболее частыми из которых являются: #DIV и #NUM, это Очень важно исправить их перед тем, как приступить к выполнению указанного действия.
После определения всего этого, следующее, что нужно сделать, это закройте исходную книгу, если она открыта, в если он остается открытым во время выполнение процесса, при преобразовании данных могут возникнуть ошибки .
Подготовить базу данных
Следующим будет подготовить базу данных , для этого вы должны открыть базу данных Access где ты хочешь все импортированные данные записаны . На этом этапе необходимо убедиться, что база данных находится в только чтение и что он содержит необходимые разрешения для предоставления изменения в базе данных . Здесь вы можете хранить данные в существующей базе данных ou создать новую базу данных.
Если вы хотите сохранить его в новом, вам просто нужно перейти на вкладку «Файл» , там вы выбираете «Новый» и вы воли затем ваша новая пустая база данных на экране. Перед тем, как начать этот процесс импорта, вы должны выбрать, хотите ли вы сохранить контент в новая или существующая таблица .
При этом учитываются эти два момента:
- Создайте новую таблицу: Сбор данные в новой таблице, О компании для создайте таблицу и добавьте в нее все импортированные данные. В случае таблицы с указанным именем программа перезаписывает содержимое таблицы данными из Импортировать.
- Добавить в существующую таблицу: теперь, если вы решили добавить в живая картина существующие, линии таблицы Excel добавляются в указанный массив. Также важно, чтобы на этом этапе вы очень осторожно и подробно , потому что большинство ошибок происходит здесь из-за того, что данные не соответствуют структуре, конфигурации, среди прочего.
«ОБНОВЛЕНИЕ ✅ Хотите связать данные из книги Excel с базой данных Access? ⭐ ВОЙДИТЕ ЗДЕСЬ ⭐ и узнайте все о SCRATCH! »
Как только все это определено, следующий список задач выполнить операцию импорта .
Для этого нужно выполнить следующий шаг:
Начать процедуру импорта
Здесь необходимо учесть расположение мастера для импорта или ссылки , это будет зависеть от версия Access, которая ты используешь.
В этом случае вы должны выбрать следующий маршрут в зависимости от используемой версии:
- Для пользователей, использующих самые последние версии, такие как Подписка на Access 2019 или Microsoft 365 Access , нужно будет перейти на вкладку «Внешние данные» и в разделе «Импорт и ссылка» вы должны выбрать опцию для «Новый источник данных» затем «Из файла» и, наконец, «Эксель».
- Для пользователей, использующих версии Access 2010, Access 2013 и Access 2016, они должен перейти на вкладку «Внешние данные» и в разделе «Импорт и ссылка» выберите опцию «Эксель».
Теперь в окне » Получить внешние данные — электронная таблица Excel », вы должны выбрать «Имя файла» и укажите имя файла Excel, содержащего данные для импорта. Вы также можете нажать на «Просматривать» затем в диалоговом окне откройте соответствующий файл. Также важно указать, как вы хотите импортированные данные являются enregistrées .

Теперь, чтобы иметь возможность хранить данные в таблицу , вы должны выбрать опцию «Импортировать источник данных в новую таблицу в текущей базе данных». Там пользователь должен дать имя этой таблице.
Если вы хотите добавить данные из существующей таблицы, вы должны выбрать опцию «Добавить копию записи таблицы» затем выберите один из таблицы в раскрывающемся списке . Если в базе данных нет таблиц, эта опция будет недоступна. И наконец, вы должны нажать на «ХОРОШО» .
С помощью мастера импорта электронных таблиц
Наконец, с мастер импорта, вы можете выполнить импорт.
Для этого выполните следующие действия:
- После запуска мастера на первой странице вы должны выбрать электронная таблица содержащие данные, которые вы хотите импортировать, затем щелкните «Следующий».
- Теперь на второй странице мастера импорта вам нужно выбрать опцию «Показать рабочие листы» ou «Отображать пляжи с названиями», здесь вы должны выбрать вариант в соответствии с вашим случаем, затем нажать на «Следующий».
- Если первая строка рабочего листа содержит имена полей, вы должны выбрать «Первый столбец содержит заголовок столбца» , затем выберите Кнопка «Далее».
- После этого, помощник попросит вас просмотреть свойства элементов управления, здесь вы должны нажать на столбец внизу страницы чтобы вы могли видеть свойства полей . Вы также можете просматривать и изменять имя и тип данных поля назначения .
- На следующем экране вам нужно указать первичный ключ для таблицы, здесь вы можете выбрать опцию «Разрешить доступ для добавления первичного ключа», это заставит программу добавить одну поле автоматическая нумерация в качестве первого поля целевой таблицы, а затем автоматически заполнить его значения уникального идентификатора , затем щелкните новый из «Следующий».
- Наконец, на последнем экране мастера импорта вы должны указать имя целевой таблицы. В разделе «Импортировать в таблицу», вам нужно написать имя для таблицы. Если таблица уже существует, тогда Access отображает вам сообщение спрашивая, хотите ли вы перезаписать существующий контент в таблице, вы можете выбрать опцию «Да» продолжить или «Нет» чтобы указать другое имя, затем щелчок нажмите «Готово».
- После этого импорт данных начать , после завершения процесса вы должны внимательно проверьте, что все данные были переданы правильно .
Связывание данных из Excel с Access
Импорт данных это один из самых распространенных процессов, когда вы хотите просматривать данные из Excel в Microsoft Access , но вы также можете выполнить процедуру привязки данных.
Для этого вам необходимо выполнить каждый из следующих шагов:
Подготовить данные Microsoft Excel
В этом случае первым делом нужно поискать Файл Excel и электронная таблица где находится контент, на который вы хотите создать ссылку. Ты можешь не хотеть свяжите весь контент, который там появляется, но только его часть. Поэтому для этих случаев необходимо создать именованный диапазон в Excel, держи в виду, что это процедура не обязательна и выполняется только в том случае, если вы не хотите связывать всю информацию на листе.
Давайте посмотрим, что нужно делать:
- Здесь ты должен войти Excel и отобразите лист de исчисление в котором вы хотите определить
Download Article
Download Article
Access is a relational database manager that allows you to import one or multiple Excel databases into its system so you can match common fields between or among them. Because a single Access file can contain multiple Excel spreadsheets, the program is also a great way to aggregate or analyze large amounts of information. First, though, you need to import the Excel spreadsheet into Access. This only requires a few key steps.
Things You Should Know
- Before you import your spreadsheet into Access, make sure you have clear column headers in the first row so they can easily translate to field names.
- Scan multi-page workbooks to make sure each type of data is handled the same way across all sheets.
- The Access import wizard makes it easy to import your data in a way that Access can understand.
-
1
Open both programs on your computer. You will need to purchase and download a Microsoft Office package that includes both Excel[1]
and Access. You can do this online through the Microsoft site.- Once the programs are downloaded, click «Start» in Windows and select «All Programs.»[2]
- Click on «Microsoft Office,» and then select «Access» (or «Excel») from the drop-down menu. You may already have an Excel spreadsheet created that someone else sent you or that you downloaded from elsewhere. Having Office on your computer allows you to open it.
- Once the programs are downloaded, click «Start» in Windows and select «All Programs.»[2]
-
2
Clean up your Excel spreadsheet before importing it into Access. It will make it easier if you do a few simple steps before you import the Excel spreadsheet into Access. The key is that your data must be consistent between imported spreadsheets.[3]
- It’s a good idea to make sure that the first row in the Excel spreadsheet contains your column headers (or field names), and that these are very clear and easy to understand.[4]
For example, for a column containing people’s last names, you may want to call the column header/field name «last name.» Be clear and precise because it will make it easier when you try to match column headers in one Excel sheet with another. - Access allows you to link common fields between two or among many spreadsheets. Let’s say you have an Excel sheet that contains payroll information. It includes people’s first and last names, addresses, and salaries. Let’s say for the sake of argument that you want to match that sheet within Access to a second Excel sheet that contains information about campaign finance contributions. This second sheet contains people’s names, addresses, and donations. What Access allows you to do is to match different column headers with one another. You could link name headers to see which people of the same name appear in both databases, for example.
- Scan the Excel sheets to make sure that each type of data is handled the same way, and clean it up before importing it into Access.[5]
It must be what Access calls «relational.» For example, if the hypothetical spreadsheet for payroll contained first name, last name and middle initial in one column, but the second spreadsheet contained only first name and last name in separate columns, Access will register this as no match. There needs to be matching column headers/fields.
Advertisement
- It’s a good idea to make sure that the first row in the Excel spreadsheet contains your column headers (or field names), and that these are very clear and easy to understand.[4]
-
3
Split information within a column in Excel. To take care of this issue, you may want to split information in a column within Excel, so that it doesn’t erroneously register as a «no match» in Access.
- As an example, you may want to split the first name into its own column, the middle initial into its own column, and the last name into its own column. If it’s already done the same way in the second spreadsheet, when you link, say, last name with last name in Access, it should generate matches when the names are the same.
- To split a column in Excel, highlight the column that has information you want to split in it. Click on «data»in the toolbar within the Excel program. Click on «text to columns.» Generally, you will choose the option «delimited.» Click next.
-
4
Continue using the wizard to split merged columns. Now you are ready to complete the process of splitting merged information in one column into multiple columns.
- Choose how the data within the column is «delimited.» This means that each piece of information in the column is separated by something. Most common choices include a space, a comma, or a semi-colon. Often the information is just separated by a space. As in the following example: let’s say the name «John A. Doe» appears in a single column. The first name John is separated from the middle initial A by a space. The last name Doe is separated from the middle initial A by a space. So choose space in the delimited wizard.
- Click next. Click finish. The program should split John, A., and Doe into three columns. You can then give the new columns new header names to indicate the kind of information housed in them (last name, first name, etc.). It’s a good idea to create several blank columns to the right of the data you’re splitting before you do it because it will push the data into the new blank columns (instead of columns that already contain information).
Advertisement
-
1
Open the Access program on your computer. Go to the start menu, choose Microsoft Office, and click on Microsoft Access. You need to open a new blank Access database to import the Excel sheet into it.
- Choose «blank desktop database» to create a new database within the Access program.
- Give it a new name if you want. Click «create.»
-
2
Import an Excel spreadsheet into Access. The next step is to pull the Excel spreadsheet (or more than one) into the Access database.
- Click on «External Data» in the toolbar once you are within the Access database manager. Choose «Excel.»[6]
In some versions of Access, you will find this function by clicking on «file» in the toolbar and «Get External Data.»[7]
- Where it says «file name,» click «browse.» This will allow you to find your Excel sheet on your computer.
- Leave the box checked that says «import the source data into a new table in the current database.» It will be checked by default.
- When you find the Excel spreadsheet you want to import on your computer, click on it. Click «OK.» This will take you into the wizard for importing Excel into Access.
- Click on «External Data» in the toolbar once you are within the Access database manager. Choose «Excel.»[6]
Advertisement
-
1
Go through the steps on the wizard that appears within Access. To complete the process of importing your spreadsheet, you need to complete the steps in the wizard.
- Choose the worksheet within the Excel spreadsheet that you want to import. Sometimes, this is simple because the Excel spreadsheet is just one sheet. However, sometimes people create multiple pages within a single Excel spreadsheet, which you can see by clicking on the tabs at the bottom of the spreadsheet. If this is the case, you need to tell the Access wizard which spreadsheet you are choosing. Click next.
- The next page has a box asking if the first row in the Excel sheet has column headings. This means the row in a spreadsheet that identifies the data in each column (such as last name, address, salary, etc.). It’s a good idea if you cleaned up your Excel sheet first to make sure that the first row has clearly defined column headings. Then, just check yes that the first row contains column headings. This is the simplest approach. Click next.
- If your first row does not contain column headings, the next page asks you if you want to rename what are called «fields» in Access (these are column headings). If you did not already name each field something clear and easy to recognize before importing (recommended), then you can do it here.
-
2
Finish the importing process. There are only a few steps left in the importing process. The next page in the wizard will ask if you want to identify a primary key.
- You don’t have to do this, but you can. A primary key means the computer program will assign each row of information a unique number. This can be helpful later on when sorting the data. Click next.[8]
- The final screen in the wizard has a space providing a default name. You can change the name of the Excel sheet you are importing (it will become a «table» in Access on the left side of the page when you finish importing it).
- Click «import.» Click «close.» You will see your table on the left side of the screen. It is now imported within Access.
- If you want to link more than one data set, repeat this process with another or multiple Excel spreadsheets. Now, you are ready to match the data in the sheets within Access.
- You don’t have to do this, but you can. A primary key means the computer program will assign each row of information a unique number. This can be helpful later on when sorting the data. Click next.[8]
Advertisement
Ask a Question
200 characters left
Include your email address to get a message when this question is answered.
Submit
Advertisement
Video
Thanks for submitting a tip for review!
-
If the Excel file is from a different version of Office than Access, you may have trouble importing files smoothly.
-
It can’t be underscored enough: You need to clean up your Excel spreadsheet before importing it. Partly this means analyzing the data you have for problems.
-
Always keep a copy of your original spreadsheets, so if you mess them up, you can repeat the process.
-
You can not import more than 255 fields into Access.[9]
Advertisement
About This Article
Thanks to all authors for creating a page that has been read 263,983 times.





