注意: 有关 Access 2016 及更高版本中的数据收集的信息,请参阅导入、导出SQL Server。
可以通过电子邮件收集或更新信息,方法是使用 Microsoft Access 2007 或 Access 2010 Microsoft Outlook 2007 或 Microsoft Outlook 2010。 Access 指导你完成创建数据收集表单和通过电子邮件发送表单。 当电子邮件收件人返回已完成的表单时,可以选择自动处理收集的数据并将其存储在指定的 Access 数据库中。 这种数据收集方法可以节省复制和粘贴或手动数据输入过程中通常涉及的时间和精力。 下面是一些可以使用此过程收集数据的方案:
调查 可以执行调查并编译结果,方法是首先创建 Access 数据库,其中包含存储结果所需的表,然后使用向导生成调查表单,然后将其邮寄给调查参与者。 当参与者答复时,调查数据会自动存储在数据库中。
状态报告 无论是最新的库存级别状态还是有关待处理问题的最新信息,你的团队都可以定期向你发送包含当前信息的电子邮件,让你随时了解情况。
事件管理 组织会议、培训或其他活动时,可以通过电子邮件发送一个或多个表单,以收集联系信息、旅行和酒店首选项等。 如果选择自动处理答复,参与者可以随时更改其首选项,而无需通知你,并且你始终有权访问最新数据以进行决策。
本文介绍了使用此过程所需的内容、如何开始使用向导,然后提供有关各种步骤的其他信息,以便在按照向导进行作时做出最明智的选择。
注意: 如果收件人使用 Hotmail 或 Yahoo 向你发送数据收集表单,则无法添加收集的数据。
开始前
如果这是你第一次使用电子邮件收集数据,请执行以下步骤:
-
确保已在计算机上安装以下应用程序:
-
Access 2007 或 Access 2010。
-
Outlook 2007 或 Outlook 2010。 您必须在用于发送电子邮件的计算机上安装并配置 Outlook。 如果已安装 Outlook 但尚未配置,请启动 Outlook 并按照 Outlook 启动向导中的说明进行作。 有关向导的帮助,请参阅 Outlook 帮助。
-
如果计划使用 InfoPath 表单,请确保已安装 InfoPath 2007 或更高版本,并且收件人还需要在其计算机上安装 InfoPath。
-
电子邮件收件人必须具有 InfoPath 或支持 HTML 格式的电子邮件客户端,才能查看和编辑表单。
用于通过电子邮件收集数据的表单不是 Access 窗体。 向导以 HTML 或 InfoPath 格式生成特殊窗体。
标识目标数据库。 数据库可以采用 .mdb 或 .accdb 格式。 此外,还支持 .mde 和 .accde 文件。 如果不想使用现有数据库,则必须创建一个新数据库。
-
-
标识或创建要用电子邮件答复中的数据填充的表。 如果要收集现有表的数据,请确保这些表不是只读的,并且你具有添加或更新其内容所需的权限。
注意: 无法使用电子邮件收集附件、自动编号、OLE 和多值字段类型
如果数据收集作填充了两个或更多个表,则必须创建一个选择查询,并将其用作窗体的记录源。 确保查询包含基础表中的所有必填字段。 如果使用现有查询,请确保查询不是只读的,并且您具有添加或更新其内容所需的权限。 有关基于两个或更多表创建查询的详细信息,请参阅 查询简介一文。
在以下情况下,将数据存储为新记录:
-
如果数据将填充多个表。
-
如果目标表没有主键字段。 主键值是将每个答复映射到现有记录所必需的。 如果目标表没有主键字段,请立即添加它,或者分配具有唯一值的现有字段作为主键。
-
如果目标表没有任何记录。 如果表为空,向导会假定要添加记录。
-
如果收件人的电子邮件地址未存储为数据库中的字段。 收集数据以更新记录时,将无法在向导生成的消息中手动键入地址。 地址字段必须位于目标表中,或者位于与目标表有关系的表中。
入门
-
打开将存储收集的数据的数据库。
-
若要将数据添加到单个表,请在导航窗格中选择该表。 若要填充多个相关表,请选择绑定到这些表的查询。
-
执行以下任一作以启动向导:
-
在“ 外部数据 ”选项卡上的“ 收集数据 ”组中,单击“ 创建电子邮件”。
-
右键单击表或查询,然后单击“ 通过电子邮件收集和更新数据”。
注意: 如果表不包含任何字段,或者只有“自动编号”、“OLE 对象”、“附件”或“多值查阅”字段类型,Access 将显示以下消息: 所选表或查询没有任何支持使用电子邮件收集数据的字段。
-
如果表包含支持数据收集的字段,向导将启动。 如果目标表同时支持添加和更新数据,向导将指导你完成通过电子邮件收集数据所需的步骤。
对于此过程的以下七个主要步骤中可能存在的任何问题,请使用以下部分作为参考。
选择要发送的数据输入表单的类型
根据你自己和收件人的易用性选择表单类型。
选择 HTML 表单 其电子邮件客户端支持 HTML 的任何用户都可以查看和编辑 HTML 表单
选择“Microsoft InfoPath”窗体 仅当计算机上安装 InfoPath 时,才会看到此选项。 仅当收件人的计算机上安装了 InfoPath 和 Outlook 时,才选择此选项。 InfoPath 表单提供更好的数据输入和编辑环境,
接下来显示的向导页取决于目标对象是否支持更新数据。 如果对象是基于两个或更多表的查询,或者它是一个没有主键字段或不包含任何记录的表,则向导假定你要添加新记录,并提示你选择窗体字段。 在所有其他情况下,向导会提示你指定是要添加还是更新数据,然后再要求你选择表单字段。
选择是收集新数据还是更新现有数据
指定要对数据执行的作。 你使用的表单类型会影响收件人可以在单个答复中发送给你的新记录数。 更新数据时,收件人必须更新的记录数标识邮件中将包含的预填写表单数。
注意: 若要添加新记录,请在创建邮件时,在电子邮件的地址框中键入电子邮件地址。 若要更新现有数据,收件人的电子邮件地址必须作为字段存储在基础表或查询中,或存储在相关表中。
指定要收集的数据
选择要包含在窗体中的字段时,无需包含表单中基础表或查询中存在的每个字段。 但是,必须满足以下条件:
-
必填字段: 标有星号 (*) 符号的字段是必填字段。 如果要收集新记录,向导将自动包含 其 Required 属性设置为 “是”的所有字段。 如果任何记录的必填字段为空,Access 将无法将该记录添加到表中。
-
不支持的字段类型: 不能在窗体中包含某些字段类型,例如自动编号、附件、OLE 对象或多值查找字段。
-
主键字段: 但是,添加记录时,用户将能够键入字段中的值;如果指定的值已在使用中,则不会处理答复。
注意: 对于每个包含的字段,在 “字段属性”下指定标签,如果不希望用户更改该字段中的数据,请单击“ 只读 ”。
指定自动或手动数据处理
可以选择自动或手动处理答复。 自动处理意味着在收到答复时,Outlook 和 Access 协同将数据导出到数据库中的目标表。 自动处理可以节省时间和精力。 手动处理仅意味着启动导出作,将数据从 Outlook 中的指定文件夹传输到 Access 中的目标表。
只要答复到达邮箱时满足以下条件,答复就成功导出到目标表:
-
Outlook 必须已在您的计算机上运行。 如果 Outlook 未运行,则下次启动 Outlook 时将开始处理。
-
访问不得受密码保护,并且不应在独占模式下打开。 自发送电子邮件以来,数据库的名称或位置不得更改。
-
表和查询的名称以及窗体中包含的字段的属性在发送电子邮件后不得更改。
-
必须具有添加或更新基础表和查询内容所需的权限。
注意: 如果自动处理失败,请尝试修复任何问题,然后手动导出失败的答复。 解决问题后到达收件箱的任何答复将继续自动处理。
设置属性以控制答复的自动处理
若要指定用于存储答复的其他 Outlook 文件夹,请在向导 的“指定处理答复 方式”页上单击文件夹名称。 在 “选择文件夹 ”对话框中,选择其他文件夹,或单击“ 新建 ”创建新文件夹。
如果单击“ 设置属性”以控制答复的自动处理 以更改或微调导入设置,请参阅下表,了解有关可用选项的信息:
|
选项 |
结果 |
|---|---|
|
放弃未向其发送邮件的回复 |
如果只希望自动处理邮件的原始收件人发送的答复,请选择此检查框。 其他人的回复存储在目标文件夹中,但不会自动处理。 |
|
接受每个收件人的多个答复 |
如果只希望自动处理每个收件人的第一个答复,请选择此检查框。 第二个和后续答复存储在目标文件夹中,但不会自动处理。 注意: 此设置仅控制所处理的回复数,而不是单个答复中的记录数。 换句话说,如果发送 InfoPath 表单,用户能够在单个答复中向你发送多个记录,并且 Access 会自动处理答复中的所有记录,即使未选中此检查框。 |
|
仅允许更新现有数据 |
当收件人使用 InfoPath 表单更新数据时,除了对现有记录进行更新外,还可以发送新记录。 选中此检查框可仅处理现有记录的更新。 |
|
要处理的答复数 |
键入要自动处理的所有收件人) (答复总数。 如果希望自动处理所有答复,请在文本框中输入较大的值,例如 5000。 达到指定值后收到的答复将存储在目标文件夹中,但不会自动处理。 |
|
停止日期和时间 |
指定何时应停止此电子邮件的自动答复处理。 在此日期和时间之后收到的答复存储在目标文件夹中,但不会自动处理。 |
若要在以后更改这些选项,请在“ 外部数据 ”选项卡上的“ 收集数据 ”组中,单击“ 管理答复”。 在“ 管理数据收集消息 ”对话框中,选择要更改其设置的邮件,然后单击“ 消息选项”。 在对话框中所做的更改会影响你针对该邮件收到的所有后续答复。
手动处理答复
若要控制何时以及处理哪些答复,请不要选择“自动处理”选项。 答复将存储在 Outlook 中的指定文件夹中,直到选择并右键单击文件夹中的每个答复,然后单击快捷菜单中的“ 将数据导出到Microsoft Access ”。
在某些情况下,可能还需要手动处理无法自动处理的答复。
在导出数据之前,请记住以下事项
-
不应在独占模式下打开 Access 数据库,并且自发送电子邮件以来,数据库的名称或位置不得更改。
-
表和查询的名称以及窗体中包含的字段的属性在发送电子邮件后不得更改。
-
必须具有添加或更新基础表和查询内容所需的权限。
选择要指定收件人的电子邮件地址的方式
如果仅收集新信息,可以通过两种方式指定电子邮件地址:
-
在 Outlook 电子邮件中单独键入电子邮件地址,或从通讯簿中选择地址。
-
使用当前 Access 数据库的表或查询中的电子邮件地址字段。
注意: 收集数据以更新现有记录时,看不到此对话框,因为收件人的电子邮件地址必须首先作为数据库中的字段提供。
直接在 Outlook 中输入电子邮件地址
如果要在 Outlook 中指定收件人,则可以在发送邮件前预览和自定义邮件。 在电子邮件正文中,包括简要介绍和表单。 建议不要对窗体进行任何更改。 对窗体结构的更改可能会导致答复未处理。
使用存储在数据库中字段中的电子邮件地址
用于选择 “关联表” 的选项引用相关的表。 若要查看或编辑数据库中的表关系,请在 “数据库工具”上。 选项卡,在“关系”组中,单击“关系”
有关关系的详细信息,请参阅 表关系指南一文。
查看并指定收件人列表
最后一个主要步骤包括预览和自定义电子邮件、微调收件人列表,然后发送数据收集邮件。
创建和发送电子邮件
当向导通知你现在可以创建电子邮件,并显示如何使用 “管理答复” 命令查看电子邮件状态时,可能会出现一些警告消息。 下表描述了每个警告以及可以采取的解决该警告的作:
|
警告 消息 |
说明 |
S olution |
|---|---|---|
|
某些记录在指定的电子邮件地址字段中不包含有效的地址。 不会为这些行返回任何数据。 |
所选的电子邮件地址字段包含 null 值。 |
如果要收集每条记录的数据,请退出向导,并将 null 值替换为电子邮件地址。 然后再次启动向导。 |
|
你当前对数据库有一个排他锁;在释放锁之前,自动处理将失败。 |
数据库当前以独占模式打开。 |
如果选择自动处理答复,处理会失败,因为 Access 无法向其添加或更新具有排他锁的数据库。 在发送消息后立即以非独占模式关闭并重新打开数据库 |
|
这些电子邮件可能包含机密或敏感数据。 |
你正在收集数据以更新现有记录,即将发送的表单将预先填写现有数据。 |
如果某些窗体字段包含敏感数据,请返回到向导步骤,在该步骤中选择了字段,并从窗体中删除包含敏感数据的字段 |
预览并自定义邮件后,可以筛选电子邮件地址字段并选择收件人。 通过选择相应的检查框,选择要使用的电子邮件地址。 如果看到列出无效电子邮件地址的对话框,请记下列表中的地址,然后单击“ 退出”。 验证无效地址,进行任何必要的更正,然后尝试重新发送邮件。