导入或链接到文本文件中的数据

导入或链接到文本文件中的数据

可以通过两种方式将文本文件中的数据导入 Access 如果希望能在 Access 中编辑该数据副本,请使用“导入文本向导”将文件导入新的或现有的表中。 如果只想在 Access 中查看最新的源数据,让查询和报告更丰富,请使用“链接文本向导”创建一个指向数据库中文本文件的链接。

本文介绍了如何使用这些向导导入或链接到文本文件。

本文内容

文本文件和支持格式的相关内容

从文本文件导入数据

有关导入的其他需知内容

解决导入表中的值丢失或错误的问题

链接到文本文件

解决链接表中出现 #Num! 和错误值的问题

文本文件和支持格式的相关内容

文本文件中应包含字母和数字等无格式的可读字符以及制表符、换行符和回车符等特殊字符。 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
    
  • 固定宽度文件    在固定宽度的文件中,每条记录都显示在单独的行上,并且记录中每个字段的宽度将保持一致。 例如,每个记录的第一个字段始终是 7 个字符长,每个记录的第二个字段始终是 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,2017/4/5,"长沙"

    • "米申",27,2018,"西安"

    将字段值括起来的字符叫做文本限定符。 并非必须使用文本限定符,但如果出现以下情况,则必须使用:

    • 字段分隔符显示为字段值的一部分。 例如,如果将逗号用作字段分隔符,并且长沙,西安是有效的字段值,则您必须将该值用一对识别符括起来,就像这样:"长沙,西安"

    • 您希望 Access 将非文本值(如 04529340034539)视为文本值,并将其存储在“文本”字段中。

    导入操作过程中可以指定文件是否使用限定符,如果使用,则指定使用什么字符作为限定符。

    整个文件中使用的文本限定符务必相同,并且只将文本值使用限定符对括住。

    字段数

    源字段数不能超过 255,因为 Access 在一个表中支持的最大字段数为 255。

    跳过记录和值

    如果只对文本文件中的部分内容感兴趣,请在开始导入操作之前编辑该源文件。 导入操作过程中无法跳过记录。

    如果要将数据添加到新表,可以跳过某些字段,但是如果要将内容追加到现有的表,则不支持此操作。 将数据追加到现有的表时,源数据的结构必须与目标表的结构匹配。 换言之,源数据和目标表所拥有的列数必须一致,并且源数据和目标表的数据类型必须匹配。

    空白行和空白字段

    删除文件中所有不必要的空白行。 如果存在空白字段,请尝试添加丢失的数据。 如果准备将记录追加到现有的表中,请确保表中的对应字段可接受空值。 如果一个字段的“必填”字段属性设置为“”,并且它的“有效性规则”属性设置允许空值,则该字段将接受空值。

    多余字符

    检查并删除多余字符,如制表符、换行符和回车符。

    数据类型

    为避免导入过程中出错,请确保每行的每个源字段中包含的数据类型相同。 Access 会通过扫描文件的前 25 行来确定表中字段的数据类型。 强烈建议前 25 行源数据禁止在任何字段中混合不同数据类型的值。 此外,将被视为文本值的非文本值务必使用单引号或双引号括住。

    如果源文件在 25 行之后包含混合值,则导入操作仍然可能跳过或错误转换这些值。 有关疑难解答的信息,请参阅下文中的解决导入表中的值丢失或错误的问题部分。

    字段名称

    对于带分隔符的文本文件,如果文件中未包含字段名称,则建议将字段名称放在第一行。 导入操作过程中可以指定 Access 将第一行中的值视为字段名称。 导入固定宽度的文本文件时,Access 不提供将第一行的值用作字段名称的选项。

    注意: 将带分隔符的文本文件追加到现有的表时,请确保每一列的名称与对应字段的名称完全匹配。 如果列名与表中对应字段的名称不同,导入操作将失败。 要查看字段的名称,请在“设计”视图中打开目标表。

  3. 关闭源文件(如果它是打开的)。 源文件保持打开状态可能会导致在导入操作过程中出现数据转换错误。

在 Access 中启动导入过程

  1. 打开存放导入数据的 Access 数据库。 如果不想将数据存储在任何现有的数据库中,请创建一个空白数据库。

  2. 在开始导入操作之前,请先决定是要将数据存储在新表中还是现有的表中。

    • 新建表    如果选择在新表中存储数据,则 Access 将会创建一个表,并将导入的数据添加到该表中。 如果已经存在使用指定名称的表,Access 就会用导入的数据覆盖该表的内容。

    • 追加到现有的表中    如果要将数据添加到现有的表,导入过程会将该数据追加到指定的表。

      执行此操作时,请记住大部分追加操作失败都是因为源数据与目标表的结构及字段设置不匹配。 要避免这一问题,请在“设计”视图中打开该表并查看以下各项:

      • 第一行    如果源文本文件的第一行中不包含字段名称,请确保每列的位置和数据类型与表中的相应字段匹配。 对于带分隔符的文本文件,如果第一行中包含列标题,则列和字段的顺序不必匹配,但每列的名称和数据类型必须与其相应字段完全匹配。 导入固定宽度的文本文件时,Access 不提供将第一行的值用作字段名称的选项。

      • 丢失的字段或多余的字段    如果一个或多个字段不在目标表中,请在开始导入操作之前添加它们。 不过如果目标表中包含了源文件中不存在的字段,只要这些字段接受空值,就不需要从表中删除这些字段。

        提示: 如果一个字段的“必填”字段属性设置为“”,并且它的“有效性规则”属性设置允许空值,则该字段将接受空值。

      • 主键    如果表中包含主键字段,那么源文件中必须有一列包含与主键字段兼容的值。 此外,导入的键值必须是唯一的。 如果目标表中现已存在所导入记录中包含的主键值,导入操作将显示错误消息。 必须编辑源数据,使其包含唯一的键值,然后再次启动导入操作。

      • 索引字段    如果表中字段的“索引”属性设置为“(无重复)”,则源文本文件中的对应列必须包含唯一值。

  3. Access 版本不同,导入/链接文本向导的位置会略有不同。 选择与你的 Access 版本相匹配的步骤:

    • 如果使用的 Access 或 Access 2019 是最新版本的 Office 365 订阅,请在“外部数据”选项卡上的“导入并链接”组中,单击“新数据源”>“来自文件”>“文本文件”。

    • 如果使用的是 Access 2016、Access 2013 或 Access 2010,请在“外部数据”选项卡上的“导入并链接”组中,单击“文本文件”。

  4. Access 将打开“获取外部数据 - 文本文件”对话框。

    选择要导入、追加还是链接到文本文件。

  5. 在“获取外部数据 - 文本文件”对话框的“文件名”框中,键入源文件名。

  6. 指定所导入数据的存储方式。

    • 要将数据存储在新表中,请选择“将源数据导入当前数据库的新表中”。 稍后会提示您命名该表。

    • 要将数据追加到现有表中,请选择“向表中追加一份记录的副本”,然后从下拉列表中选择一个表。

      注意: 要通过创建链接表来链接到数据源,请参阅下文中的链接到文本文件部分。

  7. 单击“确定”。

    Access 会扫描文件内容,并推荐文件的组织方式。 如果文件使用分隔符来分隔字段,请务必选中“带分隔符”选项。 如果文件具有固定宽度的字段,请务必选中“固定宽度”选项。 如果不清楚文件具有固定宽度的字段还是带分隔符的字段,请参阅前面的准备源文件部分。

    注意: 如果源文本文件中包含制表符或其他特殊字符,这些字符会在“导入文本向导”中显示为数据列之间的小框。

  8. 单击“下一步”。

    向导显示的信息取决于你选择的是“带分隔符”选项还是“固定宽度”选项。

    带分隔符

    选择或指定分隔字段值的字符 - 制表符、分号、逗号、空格或其他。 如果文件使用的是文本限定符,请在“文本限定符”框中选择双引号 (") 或单引号 (')。 如果源文件的第一行包含字段名称,请选中“第一行包含字段名称”复选框。 然后单击“下一步”。

    固定宽度

    向导将显示文件的内容。 如果 Access 在数据中检测到列结构,则会在数据中放置垂直竖线以分隔字段。 查看向导建议的结构,并根据需要按照向导页上的说明添加、删除或调整分割线。 然后单击“下一步”。

  9. 如果选择追加数据,请跳到步骤 13。 如果要将数据导入到新表,请单击“下一步”。 此时应查看向导上显示的字段属性。

    注意: 如果要将记录追加到现有的表,则不会显示可以指定导入字段信息的向导页。

  10. 单击向导页下半部分的列,以显示相应字段的属性。 如果需要,请检查并更改目标字段的名称和数据类型。

    Access 会检查每一列的前 25 行,以建议对应字段的默认数据类型。 如果列的前 25 行中包含不同类型的值(如文本和数字值),向导会建议使用与列中所有或大部分值都兼容的数据类型(最常用的是文本数据类型)。 虽然可以选择其他数据类型,但请记住,与所选数据类型不兼容的值会被忽略或错误转换。 有关如何更正丢失值或错误值的详细信息,请参阅下文中的解决导入表中的值丢失或错误的问题部分。

  11. 要在字段上创建索引,请将“索引”设置为“”。 要完全跳过某个源列,请选中“不导入字段(跳过)”复选框。 然后单击“下一步”。

  12. 如果要将记录添加到新表,向导会提示你指定表的主键。 如果选择“让 Access 添加主键”,则 Access 会将“自动编号”字段添加为目标表中的第一个字段,并且用从 1 开始的唯一 ID 自动填充它。 单击“下一步”

    注意: 如果要将记录追加到现有的表,则不会显示可以指定导入字段信息的向导页。

  13. Access 会显示向导的最后一页。 如果要将记录导入到新表,请指定目标表的名称。 在“导入到表”框中,键入表的名称。 如果该表已存在,会显示一条提示信息,询问是否要覆盖表中现有的内容。 单击“”可继续操作,单击“”可为目标表指定其他名称。

    高级”按钮的作用

    通过“导入文本向导”中的“高级”按钮可以用 Access 早期版本使用的格式创建或打开导入规范。 除非你有 Access 早期版本(早于 Access 2007)的导入规范,否则不建议使用“高级”按钮。 相反,如果想要保存此次导入操作的详细信息,可以在下一部分中了解相关详细信息。

  14. 单击“完成”导入数据。

    Access 将尝试导入数据。 如果导入了任何数据,向导会显示一个对话框,告知导入操作的状态。 相反,如果该操作完全失败,Access 会显示错误消息“试图导入文件时发生错误”。

  15. 在“数据表”视图中打开目标表。 将表中的数据与源文件进行比较,确保数据看起来正确无误。

有关导入的其他需知内容

解决导入表中的值丢失或错误的问题

如果看到消息“尝试导入文件时出错”,则说明导入操作已完全失败。 相反,如果导入操作显示一个页面,提示你保存操作的详细信息,则说明该操作已成功导入全部或部分数据。 状态消息还会提到错误日志表的名称,在导入操作过程中发生的所有错误的说明都包含在这个错误日志表中。

请务必注意,即使状态消息指明操作成功,也应该查看表的内容和结构,确保所有内容正确无误,之后才能使用该表。

在数据表视图中打开目标表,查看所有数据是否都已成功添加到该表中。 然后应在“设计”视图中打开该表,查看字段的数据类型及其他属性设置。

下表说明了更正丢失值或错误值时可以采取的步骤。

提示: 解决问题时,如果发现只是丢失几个值,则可在“数据表”视图中将其直接添加到表中。 但是如果发现整列或大量的值都丢失或未正确导入,请在源文件中更正问题。 在更正完所有已知问题后,再重新执行导入操作。

问题

解决方法

-1 或 0 值

如果源文件中有一个只包含“真”或“假”值或只包含“是”或“否”值的字段,而且您选择了“是/否”作为该字段的数据类型,则您将在表中看到 -10。 在“设计”视图中打开表,将“格式”属性设置为“真/假”或“是/否”。

多值字段

Access 不支持在一个字段中导入多个值。 多个值会被视为单个值并放置在一个文本字段中,并以分号分隔。

截断数据

如果某列中的数据像被截断,请尝试在“数据表”视图中增加列宽。 如果增加列宽不能解决该问题,原因可能是数字字段的数据类型应设置为“双精度浮点型”,但实际设置为“长整型”。

主键或索引字段中的数据丢失

要导入的记录包含重复值,而重复值不能存储在目标表的主键字段中,也不能存储在 Access 数据库中“索引”属性设置为“是(不允许重复)”的字段中。 请删除源文件中的重复值,然后重试导入操作。

空值

在“数据表”视图中打开表时,您可能会看到一些字段为空。 请执行以下操作,以尽量减少或消除表中的全部空值实例:

  • 如果前 25 个源行包含不同数据类型的值,请打开源文件并重新排列行,以确保前 25 行的任何字段都不包含混合值。 然后再次尝试导入。

  • 将要存储为文本值的所有非文本值用单引号或双引号括起来。

  • 在执行导入操作的过程中,为每个字段选择适当的数据类型。 如果数据类型不正确,则您可能看到整列中都是空值或错误值。

另外,建议在“数据表”视图中查看向导最后一页中的错误日志表。 该表有三个字段:“错误”、“字段”和“行”。 每一行都包含有关一个特定错误的信息,“错误”字段的内容应该有助于解决问题。

错误字符串和疑难解答提示的完整列表

错误

说明

字段截断

文件中的值对于该字段的“字段大小”属性设置而言太大。

类型转换失败

文本文件或工作表中的值不是适合该字段的正确数据类型。 该值在目标字段中可能已丢失或看起来不正确。 有关如何解决此问题的详细信息,请参阅上表中的条目。

键值冲突

该记录的主键值是一个重复值,即该值在表中已经存在。

有效性规则失败

一个值违背了通过使用“有效性规则”属性为该字段或该表设置的规则。

必填字段中的空值

由于本字段的“必填”属性被设置为“”,因此字段值不允许为 null。

“自动编号”字段中的空值

要导入的数据包含一个试图追加到“自动编号”字段的空值。

不能正确识别的记录

文本值包含文本分隔符(通常为双引号)。 当值中含有分隔字符时,该字符在文本文件中必须重复两次,例如:

10 - 3 1/2"" 磁盘/框

返回页首

链接到文本文件

可通过链接在不导入数据的情况下连接到其他文件中的数据 - 通过这种方式可以同时查看原始程序和 Access 文件中的最新数据,而无需在 Access 中创建和维护副本。 如果不想将文本文件的内容复制到 Access 数据库,但仍想基于该数据运行查询并生成报表,则应链接到(而不是导入)该文本文件。

链接到文本文件时,Access 会创建一个链接到源文件的新表。 对源文件所做的任何更改都将反映在链接表中,但无法在 Access 中编辑相应表的内容。 如果想对数据的内容或结构进行更改,则应打开源文件并在其中进行更改。

需要从 Access 中链接到文本文件的常见情况

  • 你使用的程序会输出文本格式的数据,但你想使用该数据在 Access 等多个应用程序中进行进一步分析并生成报告。

  • 想使用其他部门或工作组维护的数据。 想查看最新的数据,但不想编辑或维护自己的数据副本。

如果你是第一次链接到文本文件

  • 链接到文本文件时,Access 会创建一个新表,它通常称为链接表。 链接表会显示源文件中的数据,但实际上不会在数据库中存储该数据。

  • 不能将文本文件链接到数据库中现有的表。 换言之,不能通过链接操作将数据追加到现有的表中。

  • 一个数据库可以包含多个链接表。

  • 对源文件所做的任何更改都自动反映到链接表中。 不过,在 Access 中链接表的内容和结构是只读的。

  • 在 Access 中打开文本文件时,Access 会自动创建一个空白数据库并自动启动“链接文本向导”。

链接到文本文件的步骤

  1. 找到文本文件,然后在 Word 或记事本等文字处理程序中打开该文件。

    请注意,一次链接操作只能链接到一个文本文件。 若要链接到多个文本文件,请对每个文件重复链接操作。

  2. 查看源文件的内容,并按下表中的说明执行操作:

    元素

    说明

    带分隔符或固定宽度

    确保该文件始终遵循其中一种格式。 如果是带分隔符的文件,请标识分隔符。 如果是固定宽度的文件,请确保所有记录中每个字段的宽度相同。

    文本限定符

    某些带分隔符的文件中可能含有使用单引号或双引号括住的字段值,如下所示:

    "陶湘",25,2017/4/5,"长沙"

    "米申",27,2018,"西安"

    将字段值括起来的字符叫做文本限定符。 并非必须使用文本限定符,但如果出现以下情况,则必须使用:

    • 字段分隔符显示为字段值的一部分。 例如,如果将逗号用作字段分隔符,并且长沙,西安是有效的字段值,则必须将该值用一对限定符括起来,就像这样:"长沙,西安"

    • 希望 Access 将非文本值(如 04529340034539)视为文本值,并将其存储在文本字段中。

    链接操作过程中可以指定文件是否使用限定符,如果使用,则指定使用什么字符作为限定符。

    整个文件中使用的文本限定符务必相同,并且只将文本值使用限定符对括住。

    字段数

    源字段数不能超过 255,因为 Access 在一个表中支持的最大字段数为 255。

    跳过记录和字段

    可以跳过字段,但不能跳过记录。

    空白行和空白字段

    删除文件中所有不必要的空白行。 如果存在空白字段,请尝试在源文件中添加丢失的数据。

    多余字符

    检查并删除多余字符,如制表符、换行符和回车符。

    数据类型

    为避免链接过程中出错,请确保每行的每个源字段中包含的数据类型相同。 Access 会通过扫描文件的前 25 行来确定表中字段的数据类型。 强烈建议前 25 行源数据禁止在任何字段中混合不同数据类型的值。 还应确保想将其视为文本值的非文本值务必使用单引号或双引号括住。

    如果源文件在 25 行之后包含混合值,则导入操作可能显示错误值或错误转换这些值。 有关疑难解答的信息,请参阅下文中的解决链接表中出现 #Num! 和错误值的问题部分。

    字段名称

    对于带分隔符的文本文件,如果文件中未包含字段名称,则建议将字段名称放在第一行。 链接操作过程中可以指定 Access 将第一行中的值视为字段名称。 但导入固定宽度的文本文件时,没有将第一行中的值视为字段名称的选项。

  3. 关闭源文件(如果它是打开的)。

  4. 打开要在其中创建链接的数据库。 确保该数据库不是只读的且你拥有更改该数据库所需的必要权限。

    如果不想在任何现有的数据库中存储链接,请创建一个空白数据库。

  5. Access 版本不同,导入/链接文本向导的位置会略有不同。 选择与你的 Access 版本相匹配的步骤:

    • 如果使用的 Access 或 Access 2019 是最新版本的 Office 365 订阅,请在“外部数据”选项卡上的“导入并链接”组中,单击“新数据源”>“来自文件”>“文本文件”。

    • 如果使用的是 Access 2016、Access 2013 或 Access 2010,请在“外部数据”选项卡上的“导入并链接”组中,单击“文本文件”。

  6. Access 将打开“获取外部数据 - 文本文件”对话框。

    选择要导入、追加还是链接到文本文件。

  7. 在“获取外部数据 - 文本文件”对话框的“文件名”框中,指定要链接到的数据所在的文本文件名。

  8. 选择“通过创建链接表来链接到数据源”,然后单击“确定”。

    此时将启动“链接文本”向导。 该向导将指导你完成链接流程。

  9. Access 会扫描文件内容,并推荐文件的组织方式。 如果文件使用分隔符来分隔字段,则务必选中“带分隔符”选项。 如果文件具有固定宽度的字段,请务必选中“固定宽度”选项。

  10. 单击“下一步”。

  11. 向导显示的下一页取决于你选择的是“带分隔符”选项还是“固定宽度”选项。

    带分隔符的文件    选择或指定分隔字段值的字符。 如果文件使用的是文本限定符,请在“文本限定符”框中选择“"”或“'”。 如果源文件的第一行包含字段名称,请选中“第一行包含字段名称”复选框。 然后单击“下一步”。

    固定宽度文件    向导将显示文件的内容。 如果 Access 在数据中检测到列结构,则会在数据中放置垂直竖线以分隔字段。 查看向导建议的结构,并根据需要按照向导页上的说明添加、删除或调整分割线。 然后单击“下一步”。

  12. Access 会在向导的下一页上显示字段属性。 单击向导页下半部分的列,以显示相应字段的属性。 如果需要,请检查并更改目标字段的名称和数据类型。

    Access 会检查每一列的前 25 行,以建议对应字段的默认数据类型。 如果列的前 25 行中包含不同类型的值(如文本和数字值),向导会建议使用与列中所有或大部分值都兼容的数据类型。 最常用的是文本数据类型。 虽然可以选择其他数据类型,但请记住,与所选数据类型不兼容的值会导致出现错误值或被错误地转换。 有关详细信息,请参阅下文中的解决链接表中出现 #Num! 和错误值的问题.

    高级”按钮的作用

    通过“导入文本向导”中的“高级”按钮可以用 Access 早期版本使用的格式创建或打开链接规范。 与导入和导出操作不同,Access 无法保存链接规范。如果想保存链接规范的详细信息,请单击“高级”按钮,设置所需选项,然后单击“另存为”。

  13. 单击“下一步”。

  14. 在向导的最后一页上,指定链接表的名称,然后单击“完成”。 如果已经存在具有该名称的表,Access 会询问你是否要覆盖现有表。 如果要覆盖,请单击“”,如果要指定其他表名称,请单击“”。

    Access 会尝试创建一个链接表。 如果表创建成功,Access 将显示消息“已完成表链接”。 请打开该链接表,查看其中的字段和数据,确保在所有字段中看到的数据都是正确的。

返回页首

解决链接表中出现 #Num! 和错误值的问题

即使看到消息“已完成表链接”,也应该在“数据表”视图中打开表,验证所有行列显示的数据都是正确的。

如果在表中任何地方发现错误或不正确的数据,则按下表中的说明采取纠正措施,然后重试链接操作。 请记住,因为链接表是只读的,所以不能直接在链接表中添加值。

问题

解决方法

-1 或 0 值

如果源文件中有一个只包含“真”或“假”值或只包含“是”或“否”值的字段,而且你选择了“是/否”作为该字段的数据类型,则你将在表中看到 -10。 在“设计”视图中打开表,将“格式”属性设置为“真/假”或“是/否”。

多值字段

链接数据时,Access 不支持在一个字段中导入多个值。 多个值会被视为单个值并放置在一个文本字段中,并以分号分隔。

截断数据

如果某列中的数据像被截断,请尝试在“数据表”视图中增加列宽。 如果增加列宽不能解决该问题,原因可能是数字字段的数据类型应设置为“双精度浮点型”,但实际设置为“长整型”。

#Num!

在“数据表”视图中打开表时,你可能会看到一些字段包含 #Num! 而非实际值。 请执行以下操作,以尽量减少或消除源文件中的全部空值实例:

  • 将要存储为文本值的所有非文本值用单引号或双引号括起来。

  • 在链接操作过程中,为每个字段选择恰当的数据类型。 如果数据类型不正确,对于所有的行,整个列中可能都只包含“#Num!”值。

下表列出了仍然会在字段中看到“#Num!”错误的情况:

丢失值的类型

目标字段的类型

措施

文本

数字或日期

将所有文本值替换为与目标字段的数据类型匹配的值,然后重试链接操作。

日期

数字

将所有日期值替换为数字值,然后重试链接操作。

数字

日期

将所有数字值替换为日期值,然后重试链接操作。

返回页首

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×