Access ошибка при попытке импорта файла

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

В этой статье подробно описываются процедуры импорта и связывания с текстовым файлом с помощью мастеров.

В этой статье

  • Текстовые файлы и поддерживаемые форматы

  • Импорт данных из текстового файла

  • Что еще важно знать об импорте

  • Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице

  • Создание связи с текстовым файлом

  • Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблице

Текстовые файлы и поддерживаемые форматы

Текстовый файл содержит читаемые знаки без форматирования (например, буквы и цифры) и специальные символы (такие как табуляция, перевод строки и возврат каретки). Access поддерживает следующие расширения для имени файла: TXT, CSV, ASC и TAB.

Чтобы использовать текстовый файл в качестве источника для импорта или связывания, необходимо структурировать его содержимое таким образом, чтобы мастера импорта и связывания могли разделить его на записи (строки), а каждую запись — на поля (столбцы). Текстовые файлы с правильной структурой делятся на два типа:

  • Файлы с разделителями.    В таких файлах каждая запись располагается на отдельной строке, а поля отделяются друг от друга одним символом (разделителем). Разделителем может служить любой знак, который не используется в значениях полей, например знак табуляции, точка с запятой, запятая, пробел и т. д. Ниже приведен пример текста с разделителями-запятыми.

    1,Company A,Anna,Bedecs,Owner
    2,Company C,Thomas,Axen,Purchasing Rep
    3,Company D,Christina,Lee,Purchasing Mgr.
    4,Company E,Martin,O’Donnell,Owner
    5,Company F,Francisco,Pérez-Olaeta,Purchasing Mgr.
    6,Company G,Ming-Yang,Xie,Owner
    7,Company H,Elizabeth,Andersen,Purchasing Rep
    8,Company I,Sven,Mortensen,Purchasing Mgr.
    9,Company J,Roland,Wacker,Purchasing Mgr.
    10,Company K,Peter,Krschne,Purchasing Mgr.
    11,Company L,John,Edwards,Purchasing Mgr.
    12,Company M,Andre,Ludo,Purchasing Rep
    13,Company N,Carlos,Grilo,Purchasing Rep
    

  • Файлы с полями фиксированного размера.    В таком файле каждая запись размещается на отдельной строке, а ширина каждого поля является постоянной для всех записей. Например, первое поле каждой записи всегда состоит из семи знаков, второе — всегда из 12, и т. д. Если фактические значения поля различаются от записи к записи, к значениям, длина которых меньше требуемой ширины, в конце нужно добавить пробелы. Ниже приведен пример текста с полями фиксированного размера.

    1   Company A   Anna       Bedecs         Owner            
    2   Company C   Thomas     Axen           Purchasing Rep   
    3   Company D   Christina  Lee            Purchasing Mgr.  
    4   Company E   Martin     O’Donnell      Owner            
    5   Company F   Francisco  Pérez-Olaeta   Purchasing Mgr.  
    6   Company G   Ming-Yang  Xie            Owner            
    7   Company H   Elizabeth  Andersen       Purchasing Rep   
    8   Company I   Sven       Mortensen      Purchasing Mgr.  
    9   Company J   Roland     Wacker         Purchasing Mgr.  
    10  Company K   Peter      Krschne        Purchasing Mgr.  
    11  Company L   John       Edwards        Purchasing Mgr.  
    12  Company M   Andre      Ludo         Purchasing Rep   
    13  Company N   Carlos     Grilo          Purchasing Rep   
    

К началу страницы

Импорт данных из текстового файла

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

В ходе импорта вы можете задать структуру исходного файла и выбрать вариант импорта: в новую или существующую таблицу.

В конце импорта можно сохранить сведения о нем в виде спецификации. Спецификация позволяет выполнять импорт повторно без использования мастера.

Стандартные сценарии импорта текстового файла в Access

Как правило, текстовые данные импортируются в Access по следующим причинам:

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

  • Вы используете Access для управления данными, но при этом регулярно получаете данные в текстовом формате от пользователей другой программы. Импорт данных выполняется регулярно, и вы хотите упростить этот процесс для экономии времени и усилий.

Примечание: Если открыть в Access текстовый файл (для этого нужно выбрать в списке Тип файлов диалогового окна Открытие файла базы данных значение Все файлы и щелкнуть нужный текстовый файл), Access запустит мастер связывания с текстовыми файлами, который позволяет создать ссылку на текстовый файл, вместо того чтобы импортировать его содержимое. Связывание с файлом отличается от импорта его содержимого. Дополнительные сведения о связывании с текстовыми файлами см. в разделе Создание связи с текстовым файлом далее в этой статье.

Подготовка исходного файла

  1. Откройте исходный файл в текстовом редакторе, например в Блокноте.

    Примечание: В ходе одной операции импорта можно импортировать лишь один текстовый файл. Чтобы импортировать несколько файлов, повторите импорт для каждого из них.

  2. Просмотрите содержимое исходного текстового файла и выполните действия из приведенной ниже таблицы.

    Элемент

    Описание

    Разделители или поля фиксированного размера

    Убедитесь, что содержимое файла соответствует выбранному формату. Если это файл с разделителями, найдите разделитель. Если это файл с полями фиксированного размера, убедитесь, что длина значения поля одинакова во всех записях.

    Ограничители текста

    Некоторые файлы с разделителями могут содержать значения полей, заключенные в одинарные или двойные кавычки, как показано ниже:

    • «Ольга Зуева»,25,4.5.2017,»Нижний Новгород»

    • «Глеб Селезнев»,27,2018,»Вологда»

    Знак, используемый для ограничения значения поля, называется ограничителем текста. Ограничители не являются обязательными, но их рекомендуется использовать в следующих случаях:

    • Разделитель является частью значения поля. Например, если в качестве разделителя используется запятая, а значение поля равно Самара, Вологда, его придется заключить в ограничители: «Самара, Вологда».

    • Вы хотите, чтобы Access обрабатывал нетекстовые значения, например 0452934 и 0034539, как текстовые и хранил их в текстовом поле.

    Во время импорта можно указать, используется ли в файле ограничитель, и, если он используется, задать соответствующий знак.

    Убедитесь в том, что во всем файле используется один ограничитель текста и что он применяется только к текстовым значениям.

    Количество полей

    Число исходных полей не должно превышать 255 , так как Access поддерживает не более 255 полей в таблице.

    Пропуск записей и значений

    Если вам нужно перенести лишь часть текстового файла, его следует отредактировать перед началом импорта, так как пропуск записей в ходе операции невозможен.

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

    Пустые строки и поля

    Удалите все лишние пустые строки из файла. При наличии пустых полей добавьте в них отсутствующие данные. Если вы планируете добавить записи в существующую таблицу, убедитесь, что соответствующие поля таблицы допускают использование значений NULL. Поле может принимать значения NULL, если для его свойства Обязательное поле задано значение Нет, а свойство Условие на значение не запрещает значения NULL.

    Лишние символы

    Найдите и удалите лишние символы (табуляции, перевода строки, возврата каретки).

    Типы данных

    Чтобы избежать ошибок при импорте, убедитесь, что типы данных в полях одинаковы для всех строк. Access считывает первые 25 строк файла, чтобы определить тип данных для полей таблицы. Настоятельно рекомендуем убедиться в том, что первые 25 исходных строк не содержат данные разных типов. Кроме того, нетекстовые значения, которые требуется обрабатывать как текстовые, необходимо заключить в одинарные или двойные кавычки.

    Если исходный файл содержит смешанные значения в строках, идущих после 25-й строки, они могут быть пропущены или неправильно преобразованы при импорте. Сведения об устранении проблем см. в разделе Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице далее в этой статье.

    Имена полей

    Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе импорта можно настроить мастер так, чтобы значения в первой строке считались именами полей. При импорте файлов с полями фиксированного размера такая возможность недоступна.

    Примечание: Если вы добавляете файл с полями фиксированного размера в существующую таблицу, убедитесь, что имя каждого столбца в точности соответствует имени поля. Если они отличаются, импорт завершится сбоем. Чтобы просмотреть имена полей, откройте конечную таблицу в режиме конструктора.

  3. Закройте исходный файл, если он открыт. Если исходный файл остается открытым в ходе операции импорта, могут возникнуть ошибки преобразования данных.

Запуск импорта в Access

  1. Откройте базу данных Access, в которой будут храниться импортируемые данные. Если ни одна из существующих баз данных не подходит для этого, создайте пустую базу данных.

  2. Перед началом импорта следует определить, в какой таблице будут храниться данные: в новой или существующей.

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

    • Добавление в существующую таблицу.    Если используется существующая таблица, при импорте данные добавляются в нее.

      Следует помнить, что ошибки в ходе добавления зачастую объясняются тем, что исходные данные не соответствуют структуре и параметрам полей в конечной таблице. Чтобы избежать таких ошибок, откройте таблицу в режиме конструктора и проверьте следующее:

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

      • Отсутствующие или лишние поля.    Если в конечной таблице отсутствует одно или несколько полей, добавьте их до начала импорта. Если же таблица содержит поля, отсутствующие в исходном файле, их не требуется удалять из таблицы, если для них разрешены значения NULL.

        Совет: Поле может принимать значения NULL, если для его свойства Обязательное поле задано значение Нет, а свойство Условие на значение не запрещает значения NULL.

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

      • Индексированные поля.    Если для свойства Индексированное поле поля в таблице задано значение Да (совпадения не допускаются), соответствующий столбец в исходном текстовом файле должен содержать уникальные значения.

  3. Расположение мастера импорта или связывания текста зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.

    • Если вы используете Access 2019 или последнюю версию Access, которая предоставляется по подписке на Microsoft 365, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Создать источник данных и выберите Из файла > Текстовый файл.

    • Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Текстовый файл.

  4. Откроется диалоговое окно Внешние данные — Текстовый файл.

    Выберите вариант для импорта данных из текстового файла, их добавления или создания связи с ними.

  5. В диалоговом окне Внешние данные — Текстовый файл введите путь к исходному файлу в поле Имя файла.

  6. Укажите способ сохранения импортируемых данных.

    • Чтобы сохранить данные в новой таблице, выберите вариант Импортировать данные источника в новую таблицу в текущей базе данных. Позднее будет предложено указать имя этой таблицы.

    • Чтобы добавить данные в существующую таблицу, выберите параметр Добавить копию записей в конец таблицы и выберите таблицу в раскрывающемся списке.

      Примечание: Сведения о связывании с источником данных путем создания связанной таблицы см. ниже в разделе Создание связи с текстовым файлом.

  7. Нажмите кнопку ОК.

    Access проверит содержимое файла и предложит его структуру. Если в файле используется разделитель, убедитесь, что выбран вариант с разделителями. Если файл содержит поля фиксированного размера, убедитесь, что выбран параметр фиксированная ширина полей. Если вы не уверены, какие поля в файле, см. предыдущий раздел (Подготовка исходного файла).

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

  8. Нажмите кнопку Далее.

    В зависимости от выбранного варианта (файл с разделителями или с полями фиксированного размера) мастер отображает нужные сведения.

    С разделителями

    Выберите или укажите знак, разделяющий значения полей (табуляция, точка с запятой, запятая, пробел или другой). Если в файле используется ограничитель строк, выберите в поле Ограничитель текста двойные («) или одинарные () кавычки. Если первая строка исходного файла содержит имена полей, установите флажок Первая строка содержит имена полей. Затем нажмите кнопку Далее.

    Фиксированная ширина полей

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

  9. Если вы добавляете данные в существующую таблицу, перейдите к шагу 12. Если же данные импортируются в новую таблицу, нажмите кнопку Далее, чтобы просмотреть свойства полей, отображаемые в мастере.

    Примечание: Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.

  10. Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного поля. Просмотрите и измените имя и тип данных конечного поля.

    Access проверяет первые 25 строк каждого столбца, чтобы определить тип данных для соответствующего поля. Если первые 25 строк столбца содержат значения разных типов, например текст и числа, мастер предлагает тип данных, совместимый со всеми значениями столбца или их большинством (как правило, это текстовый тип данных). Хотя можно выбрать и другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут в ходе импорта пропущены или преобразованы неправильно. Дополнительные сведения о том, как исправить неверные или отсутствующие значения, см. ниже в разделе Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице.

  11. Чтобы создать индекс для поля, присвойте свойству Индексировано значение Да. Чтобы пропустить весь исходный столбец, установите флажок Не импортировать (пропустить) поле. Затем нажмите кнопку Далее.

  12. Если записи добавляются в новую таблицу, мастер предлагает указать для нее первичный ключ. При выборе варианта автоматически создать ключ Access добавляет поле счетчика в качестве первого поля конечной таблицы и автоматически заполняет его уникальными значениями кодов, начиная с 1. Нажмите кнопку Далее.

    Примечание: Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.

  13. Откроется последняя страница мастера. Если записи импортируются в новую таблицу, укажите ее имя в поле Импорт в таблицу. Если такая таблица уже существует, появится запрос о перезаписи ее содержимого. Нажмите кнопку Да, чтобы продолжить, или кнопку Нет, чтобы указать другое имя конечной таблицы.

    Для чего предназначена кнопка Дополнительно?

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

  14. Чтобы импортировать данные, нажмите кнопку Готово.

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

  15. Откройте конечную таблицу в режиме таблицы. Сравните данные в таблице с исходным файлом, чтобы убедиться в их правильности.

Что еще важно знать об импорте

  • Сведения о том, как сохранить сведения об импорте в виде спецификации, которую можно использовать повторно, см. в статье Сохранение параметров операции импорта или экспорта в виде спецификации.

  • Дополнительные сведения о запуске спецификаций см. в статье Выполнение сохраненной операции импорта или экспорта.

  • Дополнительные сведения о запуске спецификаций в определенное время см. в статье Планирование импорта или экспорта.

  • Сведения о том, как изменить имя спецификации, удалить ее или обновить имена исходных файлов, см. в статье Задачи управления данными.

Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице

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

Важно отметить, что даже если в сообщении о состоянии указано, что операция завершилась успешно, перед использованием таблицы следует просмотреть ее содержимое и структуру, чтобы убедиться в правильности всех данных.

Откройте конечную таблицу в режиме таблицы, чтобы убедиться в том, что в таблицу были успешно добавлены все данные. После этого откройте таблицу в режиме конструктора, чтобы проверить типы данных и параметры свойств для полей.

В приведенной ниже таблице описаны действия по разрешению проблем, связанных с отсутствующими или неверными значениями.

Совет: Если вы обнаружили лишь несколько отсутствующих значений, можно добавить их в таблицу вручную в режиме таблицы. Если же отсутствует или неправильно импортирован целый столбец либо большой объем данных, следует исправить исходный файл. После устранения всех возможных проблем повторите импорт.

Проблема

Решение

Значения –1 или 0

Если в исходном файле есть поле, которое содержит только значения «Истина» или «Ложь» либо только значения «Да» или «Нет», и для этого поля выбран тип данных «Логический», в таблице появятся значения –1 и 0. Откройте таблицу в режиме конструктора и задайте для свойства Формат значение Истина/Ложь или Да/Нет.

Многозначные поля

В Access импорт нескольких значений в одно поле не поддерживается. Список значений обрабатывается как одно значение и помещается в тестовое поле. Значения в поле разделяются точкой с запятой.

Усеченные данные

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

Отсутствуют данные в поле первичного ключа или индексированном поле

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

Пустые значения

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

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

  • Заключите в одинарные или двойные кавычки все нетекстовые значения, которые вы хотите сохранить как текстовые.

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

Кроме того, может потребоваться просмотреть таблицу ошибок, о которой говорится на последней странице мастера, в режиме таблицы. Эта таблица содержит три поля: «Ошибка», «Поле» и «Строка». В каждой ее строке содержатся сведения об определенной ошибке, а данные в поле «Ошибка» можно использовать при устранении проблем.

Полный список ошибок и советы по устранению неполадок

Ошибка

Описание

Обрезка полей

Значение в поле превышает размер, заданный свойством FieldSize этого поля.

Ошибка преобразования типа

Значение в текстовом файле или на листе не соответствует типу данных поля. Это значение может быть заменено пустым или неверным значением в конечном поле. Дополнительные сведения об устранении этой проблемы см. в предыдущей таблице.

Нарушение уникальности ключа

Значение первичного ключа записи совпадает со значением, уже имеющимся в таблице.

Нарушение условия на значение

Значение не соответствует правилу, заданному для этого поля или таблицы с помощью свойства ValidationRule.

Пустое значение в обязательном поле

Данное поле не может иметь пустое значение, поскольку его свойство Обязательное поле (Required) имеет значение Да.

Пустое значение в поле счетчика

Импортируемые данные содержат пустое значение (NULL), и была выполнена попытка добавить его в поле счетчика.

Неинтерпретируемая запись

Текстовое значение содержит знак разделителя (как правило, это прямые кавычки). Если значение содержит знак разделителя, он должен содержаться в текстовом файле дважды, например:

по 10 дискет 3 1/2″» в коробке

К началу страницы

Создание связи с текстовым файлом

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

Когда вы создаете связь с текстовым файлом, Access создает таблицу, которая связана с исходным файлом. Все изменения, вносимые в исходный файл, применяются к связанной таблице. При этом изменение данных таблицы в Access не разрешается. Если вы хотите внести изменения в содержимое или структуру, откройте исходный файл и отредактируйте его.

Стандартные сценарии связывания с текстовым файлом из Access

  • Вы используете программу, которая сохраняет выходные данные в текстовом формате, однако эти данные нужны для анализа и создания отчетов в других приложениях, в том числе в Access.

  • Данные, необходимые для работы, обновляются сотрудниками другого отдела или рабочей группы. Вы хотите просматривать обновленные данные, но не изменять их или хранить собственную копию.

Первое связывание с текстовым файлом

  • При связывании с текстовым файлом в Access создается новая таблица, которая называется также связанной таблицей. В ней отображаются данные исходного файла; при этом они не сохраняются в базе данных.

  • Текстовый файл невозможно связать с существующей таблицей базы данных. Другими словами, операция связывания не позволяет добавлять данные в существующую таблицу.

  • База данных может содержать несколько связанных таблиц.

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

  • При открытии текстового файла в Access создается пустая база данных и автоматически запускается мастер связывания с текстовыми файлами.

Шаги по созданию связи с текстовым файлом

  1. Найдите текстовый файл и откройте его в текстовом редакторе, например, в Word или Блокноте.

    Имейте в виду, что в ходе одной операции связывания можно создать связь лишь с одним текстовым файлом. Чтобы создать связь с несколькими текстовыми файлами, операцию следует повторить для каждого из них.

  2. Просмотрите данные исходного файла и выполните необходимые действия в соответствии с приведенной ниже таблицей.

    Элемент

    Описание

    Разделители или поля фиксированного размера

    Убедитесь, что содержимое файла соответствует выбранному формату. Если это файл с разделителями, найдите разделитель. Если это файл с полями фиксированного размера, убедитесь, что длина значения поля одинакова во всех записях.

    Ограничители текста

    Некоторые файлы с разделителями могут содержать значения полей, заключенные в одинарные или двойные кавычки, как показано ниже:

    «Ольга Зуева»,25,4.5.2017,»Нижний Новгород»

    «Глеб Селезнев»,27,2018,»Вологда»

    Знак, используемый для ограничения значения поля, называется ограничителем текста. Ограничители не являются обязательными, но их рекомендуется использовать в следующих случаях:

    • Разделитель является частью значения поля. Например, если в качестве разделителя используется запятая, а значение поля равно Самара, Вологда, его придется заключить в ограничители: «Самара, Вологда».

    • Вы хотите, чтобы Access обрабатывал нетекстовые значения, например 0452934 и 0034539, как текстовые и хранил их в текстовом поле.

    Во время связывания можно указать, используется ли в файле ограничитель, и, если он используется, задать соответствующий знак.

    Убедитесь в том, что во всем файле используется один ограничитель текста и что он применяется только к текстовым значениям.

    Количество полей

    Число исходных полей не должно превышать 255 , так как Access поддерживает не более 255 полей в таблице.

    Пропуск записей и полей

    Вы можете пропустить некоторые поля, но не записи.

    Пустые строки и поля

    Удалите все лишние пустые строки в файле. При наличии пустых полей постарайтесь добавить в них отсутствующие данные в исходном файле.

    Лишние символы

    Найдите и удалите лишние знаки (символы табуляции, перевода строки, возврата каретки).

    Типы данных

    Чтобы избежать ошибок при связывании, убедитесь, что типы данных в полях одинаковы для всех строк. Access считывает первые 25 строк файла, чтобы определить тип данных для полей таблицы. Настоятельно рекомендуем убедиться в том, что первые 25 исходных строк не содержат данные разных типов. Кроме того, нетекстовые значения, которые требуется обрабатывать как текстовые, необходимо заключить в одинарные или двойные кавычки.

    Если исходный файл содержит смешанные значения в строках, идущих после 25-й строки, они могут быть неправильно преобразованы или привести к ошибкам. Сведения об устранении проблем см. в разделе Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблицедалее в этой статье.

    Имена полей

    Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе связывания можно настроить мастер так, чтобы значения в первой строке считались именами полей. Однако при импорте файлов с полями фиксированного размера такая возможность недоступна.

  3. Закройте исходный файл, если он открыт.

  4. Откройте базу данных, в которой требуется создать связь. Убедитесь, что база данных доступна не только для чтения и что у вас есть права на внесение в нее изменений.

    Если ни одна из существующих баз данных не подходит для хранения связи, создайте пустую базу данных.

  5. Расположение мастера импорта или связывания текста зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.

    • Если вы используете Access 2019 или последнюю версию Access, которая предоставляется по подписке на Microsoft 365, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Создать источник данных и выберите Из файла > Текстовый файл.

    • Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Текстовый файл.

  6. Откроется диалоговое окно Внешние данные — Текстовый файл.

    Выберите вариант для импорта данных из текстового файла, их добавления или создания связи с ними.

  7. В диалоговом окне Внешние данные — Текстовый файл укажите имя текстового файла, который содержит данные для связывания, в поле Имя файла.

  8. Выберите вариант Создать связанную таблицу для связи с источником данных и нажмите кнопку ОК.

    Откроется мастер связывания с текстовыми файлами, помогающий выполнить нужные действия по связыванию.

  9. Access проверит содержимое файла и предложит его структуру. Если в файле используется разделитель, убедитесь, что выбран вариант с разделителями. Если файл содержит поля фиксированного размера, убедитесь, что выбран параметр фиксированная ширина полей.

  10. Нажмите кнопку Далее.

  11. Следующая страница зависит от выбранного варианта (файл с разделителями или полями фиксированного размера).

    Файлы с разделителями.    Выберите или укажите знак разделителя для значений полей. Если в файле используется ограничитель строк, выберите в поле Ограничитель текста значение « (двойные кавычки) или (одинарные кавычки). Если первая строка исходного файла содержит имена полей, установите флажок Первая строка содержит имена полей. Затем нажмите кнопку Далее.

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

  12. На следующей странице мастера выводятся свойства поля. Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного полей. Просмотрите и измените имена и типы данных конечных полей.

    Access проверяет первые 25 строк каждого столбца, чтобы определить тип данных для соответствующего поля. Если первые 25 строк столбца содержат значения разных типов, например текст и числа, мастер предлагает тип данных, совместимый со всеми значениями столбца или их большинством (как правило, это текстовый тип данных). Хотя можно выбрать и другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут преобразованы неправильно или приведут к ошибкам. Дополнительные сведения см. ниже в разделе Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблице.

    Для чего предназначена кнопка Дополнительно?

    Кнопка Дополнительно в мастере служит для создания или открытия спецификаций связывания в формате, который использовался в предыдущих версиях Access. В Access не поддерживается сохранение спецификации для связывания (в отличие от импорта и экспорта). Поэтому для сохранения спецификации связывания следует нажать кнопку Дополнительно, выбрать нужные параметры и нажать кнопку Сохранить как.

  13. Нажмите кнопку Далее.

  14. На последней странице мастера укажите имя связанной таблицы и нажмите кнопку Готово. Если таблица с указанным именем существует, появится запрос на ее перезапись. Нажмите кнопку Да, чтобы перезаписать файл, или кнопку Нет, чтобы задать другое имя таблицы.

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

К началу страницы

Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблице

Даже если появится сообщение Завершено связывание таблицы, откройте таблицу в режиме таблицы и убедитесь, что все строки и столбцы содержат правильные данные.

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

Проблема

Решение

Значения –1 или 0

Если в исходном файле есть поле, которое содержит только значения «Истина» или «Ложь» либо только значения «Да» или «Нет», и для этого поля выбран тип данных Логический, в таблице появятся значения –1 и 0. Откройте таблицу в режиме конструктора и задайте для свойства Формат значение Истина/Ложь или Да/Нет.

Многозначные поля

При связывании в одном поле не может быть несколько значений. Список значений обрабатывается как одно значение и помещается в тестовое поле. Значения в поле разделяются точкой с запятой.

Усеченные данные

В случае усечения данных в столбце попытайтесь увеличить его ширину в режиме таблицы. Если устранить проблему таким образом не удается, возможно, причина в том, что числовое поле имеет тип «Длинное целое» вместо «Двойное с плавающей точкой».

#ЧИСЛО!

Открыв таблицу в режиме таблицы, вы можете заметить, что некоторые поля содержат значение #ЧИСЛО! вместо фактического значения. Чтобы свести к минимуму количество значений NULL в таблице или избавиться от них совсем, выполните следующие действия:

  • Заключите в одинарные или двойные кавычки все нетекстовые значения, которые вы хотите сохранить как текстовые.

  • В ходе связывания выберите подходящий тип данных для каждого поля. Если выбран неверный тип данных, конечный столбец может содержать только значения #ЧИСЛО! во всех строках.

В приведенной ниже таблице содержится список случаев, в которых будут появляться ошибки #ЧИСЛО!.

Тип отсутствующих значений

Тип конечного поля

Действие

Текст

Числовое поле или поле даты

Замените все текстовые данные значениями, соответствующими типу данных конечного поля, и повторите попытку связывания.

Дата

Число

Замените все значения даты числовыми значениями и повторите попытку связывания.

Число

Дата

Замените все числовые значения значениями даты и повторите попытку связывания.

К началу страницы

  • Remove From My Forums
  • Question

  • I get the error message «An error occured trying to import file <FILENAME> The file was not imported.» Every single time I try and import an Excel spreadsheet into Access using the Wizard I get this error. I am using Access 2003 and it is an Excel
    2003 file format that was saved from Excel 2007. The same thing occurs however if I use a file created in Excel 2003. I have tried reinstalling already. I know I will get the error if there are spaces inside of the spreadsheet. There are not and others can
    import the same file just fine. I was able to do the import a few days ago and this process has worked for years. I can even make a very simple spreadsheet that should work and works on everyone elses computer but will not work on this one. Any suggestions?

Answers

  • Hello,

    I actually fixed the problem. This usually is the answer, yes but in this case the database was corrupted and I had to perform a repair. If this helps anyone else out, I hope I was helpful.

    • Marked as answer by

      Monday, September 27, 2010 3:02 PM

715 / 497 / 52

Регистрация: 10.03.2012

Сообщений: 3,651

1

Импорт информации из тестового файла

12.08.2013, 00:01. Показов 10520. Ответов 14


Студворк — интернет-сервис помощи студентам

При импортировании текстового файла в таблицу возникает ошибка:
Разделитель полей, указанный в спецификации текстового файла, совпадает с разделителем целой и дробной частей чисел или ограничителем текстовых полей.
Далее идет ошибка:
Ошибка при попытке импорта файла. Импорт не выполнен.
Как можно избежать эти ошибки?



0



1302 / 508 / 63

Регистрация: 09.08.2012

Сообщений: 2,056

13.08.2013, 17:55

2

откуда выгружаете/берете данные в текст? Есть возможность выгрузить с другим разделением (; или @ или иной символ) ?



0



715 / 497 / 52

Регистрация: 10.03.2012

Сообщений: 3,651

13.08.2013, 21:40

 [ТС]

3

Цитата
Сообщение от emenem97
Посмотреть сообщение

откуда выгружаете/берете данные в текст? Есть возможность выгрузить с другим разделением (; или @ или иной символ) ?

Что значит выгрузить? Файл есть, мне его надо импортировать в Access



0



2842 / 774 / 41

Регистрация: 20.05.2012

Сообщений: 2,056

14.08.2013, 01:34

4

Invincible, кусок текстового файла в студию

Добавлено через 2 минуты

Цитата
Сообщение от emenem97
Посмотреть сообщение

Есть возможность выгрузить с другим разделением (; или @ или иной символ) ?

+1
Делать надо в коде: функция Replace()



1



715 / 497 / 52

Регистрация: 10.03.2012

Сообщений: 3,651

14.08.2013, 21:52

 [ТС]

5

Файл приложил



0



1302 / 508 / 63

Регистрация: 09.08.2012

Сообщений: 2,056

14.08.2013, 22:10

6

много файлов таких или единичный случай? Можно в эксель подгрузить файл, эксель его нормально воспринимает и делит поля. Далее из экселя перенести данные опять в текстовик с разделителем полей — табуляция



0



8798 / 5686 / 578

Регистрация: 27.03.2013

Сообщений: 19,173

14.08.2013, 22:53

7

Цитата
Сообщение от emenem97
Посмотреть сообщение

Можно в эксель подгрузить файл, эксель его нормально воспринимает и делит поля.

Вордом ваще просто — преобразовать текст в таблицу (разделитель — запятая), эксель может не правильно цифры понять. (преобразует в даты)



0



1302 / 508 / 63

Регистрация: 09.08.2012

Сообщений: 2,056

14.08.2013, 23:01

8

Цитата
Сообщение от kmv-puh
Посмотреть сообщение

Вордом ваще просто — преобразовать текст в таблицу (разделитель — запятая)

сколько это времени займет? а не до конца мойму как такую таблицу быстро построить



0



8798 / 5686 / 578

Регистрация: 27.03.2013

Сообщений: 19,173

14.08.2013, 23:07

9

emenem97 — Копируеш текстовый файл, открываешь Ворд, вставляешь.
В строке меню — Таблица — Преобразовать -Текст в таблицу -Разделитель ставишь — , (Запятая, как в текстовом файле), ок -1 сек готово



1



2842 / 774 / 41

Регистрация: 20.05.2012

Сообщений: 2,056

14.08.2013, 23:49

10

Invincible, скопируйте, пож, сюда неск строчек в виде текста, или больше, обернув тегом spoiler (+ в иконках сообщения) (не скачиваются файлы)



0



Модератор

Эксперт MS Access

11489 / 4732 / 764

Регистрация: 07.08.2010

Сообщений: 13,746

Записей в блоге: 4

15.08.2013, 00:15

11

увы —ворд не потянет

«FirstName» «David J.»
«LastName» «Osborn»
«Title» «Assistant»
«Address» «789 Moss Bay Blvd.»
«City» «Kirkland»
«State» «WA»
«PostalCode» «88033»
«HomePhone» «(425) 555-0102»
«Birthdate» 8/30/1963 0:00:00
«DateHired» 04.01.1992 0:00
«Photograph» «EmpID3.bmp»
«Notes» «David completed a certificate program in non-toxic pest control from Edmonds Community College. He was hired as an assistant. Additionally he specializes in dealing with soils
————-излишек——————разорвано примечание———————
fertilizers
chemical and non-toxic pesticides.»

запятые в тексте дадут лишние столбики

заменить запятую+кавычку —на табулятор —-тоже не пойдет
два поля без кавычек
и не уверена, что запятые только в note
они могут быть в других полях(например —adress, title)
————
только программно
с проверкой на сдвиг по датам
———
хотя не уверена, что все будет корректно



0



236 / 16 / 1

Регистрация: 07.12.2012

Сообщений: 235

15.08.2013, 01:23

12

С помощью «Блокнота»
у меня получилось за 3 прохода с функцией «Найти и заменить»
«,» замена на «;»

«, замена на «;»

«;»» замена на «;»

был неправильный экспорт изначально



0



Модератор

Эксперт MS Access

11489 / 4732 / 764

Регистрация: 07.08.2010

Сообщений: 13,746

Записей в блоге: 4

15.08.2013, 03:56

13

Цитата
Сообщение от markusdod
Посмотреть сообщение

«,» замена на «;»

«, замена на «;»

«;»» замена на «;»

увы не то

—осталась запятая после 1 и 2 даты

«(425) 555-0102″;8/30/1963 0:00:00,4/1/1992 0:00:00,»EmpID3.bmp»;

Добавлено через 7 минут
хотя можно попробовать так
(, ) (`) запятую с пробелом
(,) ( просто запятую
(`) (, ) вернуть запятую с пробелом



1



minob

3543 / 1117 / 94

Регистрация: 13.03.2011

Сообщений: 1,513

15.08.2013, 08:41

14

Цитата
Сообщение от Invincible
Посмотреть сообщение

При импортировании текстового файла в таблицу возникает ошибка:
Разделитель полей, указанный в спецификации текстового файла, совпадает с разделителем целой и дробной частей чисел или ограничителем текстовых полей.
Как можно избежать эти ошибки?

Invincible, используя мастер импорта, применяйте спецификацию (см. рис).
Кроме того, если ее сохранить, например, с именем Employees, то можно будет делать импорт программно, примерно так

Visual Basic
1
DoCmd.TransferText acImportDelim, "Employees", "Table1", CurrentProject.Path & "\05_Employees.txt", True

Миниатюры

Импорт информации из тестового файла
 



0



715 / 497 / 52

Регистрация: 10.03.2012

Сообщений: 3,651

17.08.2013, 16:06

 [ТС]

15

Спасибо



0



Иллюстрированный самоучитель по Microsoft Access 2003

Связывание с данными Excel. Копирование связанных данных.

Данные Excel не обязательно импортировать в Access. В некоторых случаях с таблицей Excel можно создать связь. Такая связь является динамической. Это значит, что при внесении изменений в источник данных, т.е. в Excel, они изменяются и в Access, и наоборот. Чтобы продемонстрировать описываемый эффект на практике, настроим связь с файлом КаталогиЕхса!.xls, выполнив следующие действия.

  1. Выберите в Access команду Файл › Внешние данные › Связь с таблицами.
  2. В списке Тип файла выберите элемент Microsoft Excel (*.xls), укажите в списке файлов таблицу КаталогиЕхсеl.xls и щелкните на кнопке Связь. Кроме того, на файле можно дважды щелкнуть (для указания файлов в других таблицах используется элемент управления Папка, но в данном примере он не потребуется). Будет запущен мастер Связь с электронной таблицей.
  3. В первую очередь следует указать, что именно будет связываться – вся таблица или только именованный диапазон. Оставьте выбранным переключатель Листы и щелкните на кнопке Далее.
  4. В следующем окне можно указать заголовки столбцов Excel в качестве имен полей. Рекомендуется всегда устанавливать флажок Первая строка содержит заголовки столбцов. В противном случае имена полей будут обработаны Excel как обычные записи. Установив флажок, щелкните на кнопке Далее.
  5. В последнем окне введите имя новой связанной таблицы СвязанныеКаталогиИзЕхсеl, щелкните на кнопке Готово, а затем на кнопке ОК в окне предупреждения. Среди других записей таблиц в окне базы данных появится запись новой таблицы, обладающая в отличие от записей всех других таблиц значком Excel, как показано на рис. 16.4.

Рис. 16.4. Связанный источник данных обрабатывается Access как файл Excel

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

Копирование связанных данных

Возможна такая ситуация, когда данные связанной таблицы хранятся не в базовом приложении, а непосредственно в Access. Для копирования связанной таблицы в локальную базу данных понадобится выполнить всего несколько щелчков мышью. Вот как это делается на практике.

Импорт или связывание данных в книге Excel

Примечание: Microsoft Access не поддерживает импорт Excel данных с примененной меткой конфиденциальности. В качестве обходного решения можно удалить метку перед импортом, а затем повторно применить метку после импорта. Дополнительные сведения см. в статье «Применение меток конфиденциальности к файлам и электронной почте в Office».

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

В этой статье приведено подробное описание процедуры импорта или связывания данных Excel с классическими базами данных Access.

В этой статье

Общее представление об импорте данных из 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. Исправьте значения в исходном файле и повторите операцию импорта.

Чтобы обеспечить правильное отображение значений в режиме таблицы, может потребоваться изменить свойство Формат некоторых полей в режиме конструктора. Ниже приведены примеры.

После завершения импорта в логическом поле в режиме таблицы отображаются значения -1 и 0. Чтобы устранить эту проблему, необходимо после завершения импорта изменить значение свойства Формат этого поля на Да/Нет для отображения флажков.

Даты в длинном и среднем форматах отображаются в Access как краткие даты. Чтобы устранить эту проблему, откройте конечную таблицу в Access в режиме конструктора и измените свойство Формат поля даты на Длинный формат даты или Средний формат даты.

Примечание: Если исходный лист содержит элементы форматирования RTF, например полужирный шрифт, подчеркивание или курсив, текст импортируется без форматирования.

Повторяющиеся значения (нарушение уникальности ключа)

Импортируемые записи могут содержать повторяющиеся значения, которые невозможно сохранить в поле первичного ключа в конечной таблице или в поле, для которого свойству Индексировано присвоено значение Да (без повторов). Удалите повторяющиеся значения в исходном файле и повторите операцию импорта.

Значения дат, сдвинутые на 4 года

Значения полей дат, импортированных с листа Excel, оказываются сдвинуты на четыре года. В Excel для Windows используется система дат 1900, в которой даты представляются целыми числами от 1 до 65 380, соответствующими датам от 1 января 1900 г. до 31 декабря 2078 г. В Excel для Macintosh используется система дат 1904, в которой даты представляются целыми числами от 0 до 63 918, соответствующими датам от 1 января 1904 г. до 31 декабря 2078 г.

Прежде чем импортировать данные, измените систему дат для книги Excel или выполните после добавления данных запрос на обновление, используя выражение [имя поля даты] + 1462 для корректировки дат.

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

Отформатируйте исходные столбцы.

Переместите строки таким образом, чтобы первые восемь строк каждого столбца не содержали значения с разными типами данных.

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

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

Как импортировать данные из Excel в Access

wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали авторы-волонтеры.

Количество источников, использованных в этой статье: 10. Вы найдете их список внизу страницы.

Количество просмотров этой статьи: 41 269.

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

Всем доброго времени суток!

Расскажу подробно (может разобраться поможет), есть ноутбук с лицензионным ПО: Windows 10 (x64) и MS Office 365 Home (x32).

Помогали мне дистанционно ставить чужое лицензионное ПО и что-то сделали с  компьютером (использовалась программа OLE32Register.exe+командная строка+regsrv32). После этого некоторые другие программы
перестали запускать и потребовали OLEPRO32.dll, самостоятельно скачал и скопировал в папку \System32 и перезагрузился. После этого программы запустились.

Далее стал стал запускать Excel, хотел поставить надстройку «Поиск решения», ничего не получилось — появилось окно, что он не может выполнить какой-то макрос VBA.

Потом решил запустить Access. Ситуация с ним такова.

1.При импорте внешних данных (txt и др.) появляется белое окно «mx_FrmMain» и никакие кнопки (Cancel, OK, Finish) не действуют.

2.Пытаюсь открыть чужую базу Access появляется окно с надписью «Проект Visial Basic в проекте поврежден». Нажимаю Справку — указывается «Эта ошибка может возникнуть при попытке преобразовать базу данных Access 97 в базу
данных более поздней версии…….». И база не открывается.

3.Открываю базу Access, ранее созданную в версии 2016, открывается, но сразу после этого 3 раза промелькнуло окно «Поиск файла stdole2.tlb». Потом запускаю команду «Сжать и восстановить» для этой базы — также
мелькает это окно.
4.Создаю пустую базу с одной пустой таблицей, сохраняю и закрываю. Снова пытаюсь ее открыть и получаю окно «Не удается открыть базу данных из-за ошибки ее VBA-проекта. База данных может быть открыта, только если сначала удалить VBA-проект. При удалении
VBA-проекта будут удалены все программы в модулях, формах и отчетах….»

Стал проверять положение и размеры файла stdole2.tlb. Он записан в 5-ти местах, причём, есть размером 18Кb и есть размером
297b. 
В общем, почитав в интернете, я понял, что 32-х битный следует записать в \SysWOW64\… и в \WinSxS\wow64…_stdole2_…. , а 64-х битный — в \system32\ WinSxS\…. и в \WinSxS\amd64….._stdole2_…..
И они все должны быть 18Kb.

Теперь не знаю, правильно ли это, и как это сделать, если доступ к папкам закрыт. Помогите, пожалуйста, разобраться в причинах и найти способ
устранения ошибки?

Понравилась статья? Поделить с друзьями:
  • A8b7 ошибка bmw
  • A8af ошибка bmw e90
  • A8b6 ошибка bmw e90
  • A8af ошибка бмв
  • A8af ошибка bmw e70