如何在EXCEL中嵌入ACCESS数据库查询表

如何在EXCEL中嵌入ACCESS数据库查询表,第1张

在 Excel 和 Access 之间交换(复制、导入和导出)数据存在多种在 Microsoft Office Access 和 Microsoft Office Excel 之间交换数据的方法。

若要将 Access 中的数据装入 Excel,可以从 Access 数据表中复制数据并粘贴到 Excel 工作表中,从 Excel 工作表连接到 Access 数据库,或者将 Access 数据导出到 Excel 工作表中。

若要将 Excel 中的数据装入 Access,可以从 Excel 工作表复制数据并粘贴到 Access 数据表中,将 Excel 工作表导入 Access 表中,或者从 Access 表链接到 Excel 工作表。

“导入”在 Excel 和 Access 中的意义各不相同。在 Excel 中,导入指的是建立一个可刷新的永久数据连接。在 Access 中,导入则指将数据装入 Access 中一次,但不建立数据连接。

您不能将 Excel 工作簿保存为 Access 数据库。Excel 和 Access 都不提供利用 Excel 数据创建 Access 数据库的功能。

--------------------------------------------------------------------------------

在 Excel 中使用 Access 数据

如果数据在 Access 中,但您希望在 Excel 中使用这些数据: *** 作: 交换的性质:

将 Access 数据复制到 Excel 中 临时

将 Access 数据导出到 Excel 定期

从 Excel 连接到 Access 数据 永久

在 Access 中使用 Excel 数据

如果数据在 Excel 中,但您希望在 Access 中使用这些数据: *** 作: 交换的性质:

将 Excel 数据复制到 Access 中 临时

将 Excel 数据导入到 Access 定期

从 Access 链接到 Excel 数据 永久

--------------------------------------------------------------------------------

在 Excel 中使用 Access 数据

您可能想在 Excel 工作簿中使用 Access 数据,以便利用数据分析和绘制图表功能、数据排列和布局的灵活性或其他一些 Access 中不可用的功能。

将 Access 数据复制到 Excel 中

您可以从 Access 的数据表视图复制数据,然后将数据粘贴到 Excel 工作表中。

启动 Access,然后打开包含要复制的记录的表、查询或窗体。

在“起始页”选项卡上单击“视图”,然后单击“数据表视图”。

选择要复制的记录。

如果要选择特定列,请在相邻的列标题之间拖动。

在“开始”选项卡上的“剪贴板”组中,单击“复制” 。

启动 Excel,然后打开要在其中粘贴数据的工作表。

单击要显示第一个字段名称的工作表区域的左上角。

若要确保复制的记录不替换现有记录,请确保工作表中您单击的单元格的下方和右方不存在数据。

在“开始”选项卡上的“剪贴板”组中,单击“粘贴” 。

将 Access 数据导出到 Excel

通过使用 Access 中的“导出向导”,可以将一个 Access 数据库对象(如表、查询或窗体)或视图中选择的记录导出到 Excel 工作表中。您在执行导出 *** 作时,可以保存详细信息以备将来使用,甚至还可以制定计划,让导出 *** 作按指定时间间隔自动运行。

下面是需要将数据从 Access 导出到 Excel 的常见情形:

您的部门或工作组在处理数据时既使用 Access 也使用 Excel。您在 Access 数据库中存储数据,但使用 Excel 来分析数据和分发分析结果。您的小组目前在需要时将数据导出到 Excel,但您想让这个过程更加高效一些。

您多数时间都在使用 Access,但您的经理更愿意在 Excel 中查看报表。您要按固定时间间隔将数据复制到 Excel 中,但您想自动完成这个过程以便节省您自己的时间。

有关将数据从 Access 导出到 Excel 的详细信息,请参阅 Access“帮助”系统。

从 Excel 连接到 Access 数据

若要将可刷新的 Access 数据装入 Excel 中,您可以创建一个到 Access 数据库的连接,这个连接通常存储在 Office 数据连接文件 (odc) 中,并检索表或查询中的所有数据。连接到 Access 数据的主要好处是:您可以在 Excel 中定期分析这些数据,而不需要从 Access 反复复制或导出数据。连接到 Access 数据后,当原始 Access 数据库使用新信息更新时,您还可以自动刷新(或更新)包含该数据库中的数据的 Excel 工作簿。例如,您可能想更新每月分发的 Excel 预算摘要报表以使其包含当月数据。

单击要存放 Access 数据库中的数据的单元格。

在“数据”选项卡上的“获取外部数据”组中,单击“自 Access”。

在“查找范围”列表中,找到并双击要导入的 Access 数据库。

在“选取数据源”对话框中,单击要导入的表或查询,然后单击“确定”。

在“导入数据”对话框中,执行以下 *** 作:

在“选择数据显示方式”下,执行下列 *** 作之一:

若要以表 (表:关于特定主题的一组数据的集合,以记录(行)和字段(列)的形式存储。)的形式查看数据,请选择“表”。

若要以数据透视表 (数据透视表:一种交互的、交叉制表的 Excel 报表,用于对多种来源(包括 Excel 的外部数据)的数据(如数据库记录)进行汇总和分析。)的形式查看数据,请选择“数据透视表”。

若要以数据透视图 (数据透视图:提供交互式数据分析的图表,与数据透视表类似。可以更改数据的视图,查看不同级别的明细数据,或通过拖动字段和显示或隐藏字段中的项来重新组织图表的布局。)和数据透视表的形式查看数据,请选择“数据透视图和数据透视表”。

或者单击“属性”为导入的数据设置刷新、格式和布局选项,然后单击“确定”。

在“数据的放置位置:”下,执行下列 *** 作之一:

若要将数据返回到选择的位置,请单击“现有工作表”。

若要将数据返回到新工作表的左上角,请单击“新建工作表”。

单击“确定”。

Excel 将外部数据区域放在您指定的位置。

有关连接数据的详细信息,请参阅连接(导入)外部数据。

在 Access 中使用 Excel 数据

您可能想在 Access 数据库中使用 Excel 数据,以便利用 Access 的数据管理、安全或多用户功能。Access 中有许多有用的功能,对于使用 Excel 数据的用户来说其中有两个功能尤为有用:

报表 如果您熟悉 Access 报表的设计,并且想以此类报表的形式汇总和组织 Excel 数据,则可创建 Access 报表。例如,您可以创建更灵活的报表,例如分组和摘要报表、打印的标签和图形报表。

窗体 如果您想使用窗体查找或显示 Excel 中的数据,则可创建 Access 窗体。例如,您可以创建一个 Access 窗体以与工作表中的列顺序不同的顺序显示字段,或者以更方便的方式在一屏中查看较长的行数据。

有关使用 Access 窗体和报表的详细信息,请参阅 Access“帮助”系统。

将 Excel 数据复制到 Access 中

您可以在 Excel 的工作表视图中复制数据,然后将数据粘贴到 Access 数据表中。

注释 如果您将工作表中多个字段的数据粘贴到一个数据表中,请确保这些列与要复制的数据的顺序匹配。将多个字段中的数据粘贴到一个窗体中时,Access 将数据粘贴到与源字段同名的字段中,无论它们在窗体中的顺序如何。如果您要复制的数据包含目标窗体中不存在的字段,则 Access 会询问您是否仅粘贴名称匹配的字段。如果不存在名称匹配的字段,则 Access 会根据目标窗体的选项卡顺序粘贴字段,此顺序可能不是所需的顺序。如果源字段名称与目标字段名称不同,您可能需要将数据粘贴到数据表而不是窗体中。

启动 Excel,然后打开包含要复制的数据的工作表。

选择要复制的行。

在“开始”选项卡上的“剪贴板”组中,单击“复制” 。

启动 Access,然后打开要在其中粘贴行的表、查询或窗体。

在“数据表”选项卡上,单击“视图”,然后单击“数据表视图”。

请执行下列 *** 作之一:

若要替换记录,请选择这些记录,然后在“开始”选项卡上的“剪贴板”组中,单击“粘贴” 。

若要将数据作为新记录追加,请在“起始页”选项卡上的“剪贴板”组中,单击“编辑”菜单上的“粘贴追加”。

将 Excel 数据导入到 Access

若要将 Excel 中的数据存储到 Access 数据库中,并且此后在 Access 中使用和维护这些数据,您可以导入这些数据。导入数据时,Access 会在新表或现有表中存储这些数据,而无需改变 Excel 中的数据。进行导入 *** 作时,一次只能导入一个工作表。若要导入来自多个工作表的数据,请为每个工作表重复执行导入 *** 作。

下面是需要将 Excel 数据导入 Access 的常见情形:

您多数时间都在使用 Excel,但以后准备使用 Access 处理这些数据。您想将 Excel 工作表的数据移到一个或多个新的 Access 数据库中。

您所在的部门或工作组使用 Access,但有时您会收到 Excel 格式的数据,而这些数据又必须合并到 Access 数据库中。您想在接收到 Excel 工作表时将它们导入到数据库中。

您使用 Access 管理数据,但您所在工作组的其他人员发来的周报是 Excel 工作簿。您想简化导入过程,以确保数据能在每周的特定时间导入到数据库中。

有关将数据从 Excel 导入 Access 的详细信息,请参阅 Access“帮助”系统。

从 Access 链接到 Excel 数据

您可以将 Excel 区域作为表链接到 Access 数据库中。如果您计划继续维护 Excel 中的区域,但又希望可以从 Access 中访问此区域,则可使用此方法。您应该从 Access 数据库而不是从 Excel 创建此类链接。

在链接到 Excel 工作表或命名区域时,Access 会创建一个新表并链接到源单元格。在 Excel 中对源单元格所做的任何更改都会反映到链接的表中。不过,您不能在 Access 中编辑对应表的内容。如果要添加、编辑或删除数据,必须在源文件中进行更改。

下面是需要从 Access 中链接到 Excel 工作表的常见情形:

您想继续在 Excel 工作表中保留数据,但要能够使用 Access 强大的查询和报表功能。

您所在的部门或工作组使用 Access,但需要处理的外部源数据位于 Excel 工作表中。您不想维护外部数据的副本,但要能够在 Access 中处理这些数据。

1、先启动Access,并打开你的mdb文件,在数据库窗口的“表”那个标签窗口中单击鼠标右键,选择“导入”菜单项

2、现在将打开“导入”对话窗口,在这个窗口中选择“文件类型”为Excel,并指定要导入的文件,再点“导入”

3、导入过程的对话窗口可能要问你一些问题,我想这你能应付

4、导入的结果会在数据库中成为一张数据表,与excel文件名相同。打开这个数据表,再打开你原来的数据表,看看两表的结构是不是相同,如果不相同,要对导入的表的结构进行适当的改造,以确保两者完全相同

5、现在在你打开的导入的数据表中,选择全部记录,Ctrl+C

6、再打开你原来的数据表,卷到最后一行上,光标放进去,Ctrl+V

事情就这么简单。如果用程序也可以,只是一年一次好像不值得编程

1、首先为导入文件设置一个按钮:(更新数据)

2、为“更新数据”按钮添加执行代码:

Private Sub Command87_Click()

If MsgBox("请准备好导入的文件!", vbOKCancel, "打印确认") = 1 Then

Dim xdlj As String 'xdlj:相对路径

Dim dklj As String 'dklj:打开路径

dklj = od()

If Not (dklj = "") Then

xdlj = "SELECT 字段名称1,字段名称2,字段名称3," _

& " INTO  ACCESS中表名称 FROM [Excel 80;Database=" & dklj & "][Plan$] WHERE 对EXCEL的筛选条件(可以省略);"   '这句是最关键的

DoCmdSetWarnings False   '关闭提示警告窗口

DoCmdRunSQL xdlj '运行SQL

MsgBox "您于" & Now() & "更新数据成功!", vbInformation '人性化提示

End If

End If

End Sub

注意  OD()  意思是open dialogue  我自己定义的函数,为了打开选择文件的会话框:

代码如下:

Public Function od() 'Opendialog

Dim f As FileDialog

Set f = ApplicationFileDialog(msoFileDialogFilePicker)

'fShow

If fShow = True Then

fFiltersClear

fFiltersAdd "Excel文件", "xls"

od = fSelectedItems(1)

Else

MsgBox "您中途选择了取消!"

End If

End Function

4、最终效果:

excel中:

ACCESS中:

将Excel工作簿中的数据导入到access数据库的表中, *** 作是简单的,通过顶部菜单-外部数据-导入并链接Excel,按步骤和提示即可完成。但为了不致误 *** 作,请注意:

一、 准备工作表(重要)

1 找到源文件并选择要导入 Access 中的数据所在的工作表。如果只想导入工作表的部分数据,则可以定义一个命名区域,其中只包含要导入的单元格。

在 Excel

中创建命名区域的方法:

a 切换到 Excel 并打开要导入的工作表。

b 选择要导入的数据所在的单元格区域。

c 右键单击选定的区域,然后单击“命名单元格区域”或“定义名称”。

d 在“新名称”对话框的“名称”框中,为该区域指定一个名称,然后单击“确定”。

请记住,导入 *** 作一次只能导入一个工作表。要导入来自多个工作表的数据,请对每个工作表重复执行导入 *** 作。

2查看源数据,并按下说明执行 *** 作。

列数

要导入的源列数量不能超过 255,原因是 Access

在一个表中支持的最大字段数为 255。

忽略行和列

在源工作表或命名区域中只包含要导入的行和列是一个好的做法。

表格形式

确保单元格采用表格形式。如果工作表和命名区域中包含合并单元格,单元格的内容将放在与最左列对应的字段中,其他字段留空。

空白行、列和单元格

删除工作表或区域中所有不必要的空白行列。如果工作表或区域包含空白单元格,请尝试在这些单元格中添加丢失的数据。如果准备将记录追加到现有的表中,请确保表中的对应字段可接受空(丢失或未知)值。如果一个字段的“必填字段”属性设置为“否”,并且它的“有效性规则”属性设置允许空值,则该字段将接受空值。

错误值

如果工作表或区域中的一个或多个单元格包含错误值(如 #NUM 和 #DIV),请先更正这些错误值,再开始导入 *** 作。如果源工作表或区域包含错误值,Access

将在表中的对应字段内放置空值。有关改正这些错误的方法的详细信息,请参阅本文后面的丢失值或错误值的疑难解答一节。

数据类型

为了避免在导入过程中出现错误,请确保各个源列中每一行所包含的数据类型都是相同的。Access

会扫描前八个源行,以确定表中字段的数据类型。我们极力建议您确保前八个源行的任何列内都没有混合不同数据类型的值。否则,Access

可能无法向该列分配正确的数据类型。

此外,最好在开始导入 *** 作前,先为 Excel

中的每个源列设置格式并为每一列指定特定的数据格式,这不失为一个好做法。如果列中存在数据类型不同的值,我们极力建议您设置格式。例如,工作表中的 FlightNo

列可能同时包含数字值和文本值(如 871、AA90 和 171)。为了避免丢失值或错误值,请执行以下 *** 作:

右键单击该列标题,然后单击“设置单元格格式”。

在“数字”选项卡的“类别”下,选择一种格式。对于 FlightNo

列,您可能需要选择“文本”。

单击“确定”。

如果为源列设置了格式,但源列中第八行以后的行中仍包含不同数据类型的值,则导入 *** 作还是可能会跳过值或错误地转换值。有关疑难解答的信息,请参阅“丢失值或错误值的疑难解答”一节的内容。

第一行

如果工作表或命名区域的第一行包含列名,则可指定 Access

在导入 *** 作中将第一行的数据视为字段名称。如果源工作表或区域不包含列名,最好在开始导入 *** 作前将它们添加到源中。

注释 

  如果准备将数据追加到现有的表中,请确保每一列的名称与对应字段的名称完全匹配。如果列名与表中对应字段的名称不同,导入 *** 作将失败。要查看字段的名称,请在

Access 的设计视图中打开表。

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

二、准备目标数据库

1 打开要在其中存储所导入数据的 Access 数据库。确保该数据库不是只读的,并且您具有更改该数据库的权限。

- 或 -

如果您不想在任何现有的数据库中存储数据,请创建一个空数据库。为此,请执行下列 *** 作:

依次单击“文件”选项卡、“新建”和“空白数据库”或“空白 Web 数据库”。

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

创建新表  如果选择在新表中存储数据,Access

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

追加到现有的表中  如果选择将数据添加到现有表中,Excel 工作表中的各行将追加到指定的表中。

请记住,追加 *** 作过程中的大多数失败都是因为源数据与目标表的结构及字段设置不匹配。要避免这一问题,请在设计视图中打开目标表并查看以下各项:

第一行  如果源工作表或命名区域的第一行不包含列标题,请确保源工作表中的每一列的位置和数据类型与表中对应字段的位置和数据类型匹配。如果第一行包含列标题,列顺序与字段顺序不必匹配,但每一列的名称及数据类型必须与其对应字段的名称及数据类型完全匹配。

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

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

主键  如果表中包含主键字段,那么源工作表或区域中必须有一列包含与主键字段兼容的值,并且导入的键值必须是唯一的。如果目标表中现已存在所导入记录中包含的主键值,导入 *** 作将显示错误消息。

索引字段  如果表中字段的“索引”属性设为“是(不允许重复)”,那么源工作表或区域中的对应列必须包含唯一值。

三、开始导入 *** 作

1 在“外部数据”选项卡上的“导入并链接”组中,单击“Excel”。

注释    除非打开了数据库,否则“外部数据”选项卡不可用。

2 在“获取外部数据 - Excel 电子表格”对话框的“文件名”框中,指定要导入的数据所在的 Excel 文件的文件名。

- 或 -

单击“浏览”并使用“文件打开”对话框以找到想要导入的文件。

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

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

若要将数据追加到现有表中,请选择“向表中追加一份记录的副本”,然后从下拉列表中选择表。如果数据库不包含任何表,则此选项不可用。

注释    若要通过创建链接表来链接数据源,请参阅下文中的链接

Excel 中的数据一节。

4 单击“确定”。

“导入电子表格向导”将会启动,并引导您完成整个导入过程。继续执行下一组步骤。

提示:

导入成功与否的关键是excel表格数据的规范性,如果有错误,导入时违法access表的有效性规则,将会生成错误记录表,需要人工逐条核对。

可用导入的方式将excel的数据导入到access中。

方法(以excel2013和access2013为例):

1、excel表中数据如下,文件名为表1xlsx

2、保存好excel文件,并打开access。

3、点击菜单栏“外部数据”按钮。

4、选择Excel图标的按钮,鼠标放上后会显示“导入Excel电子表格字样”,注意不要与后边的Excel图标混淆。

5、d出窗口选择之前的excel文件,然后下边点选“将源数据导入当前数据库的新表中”,然后点击“确定”按钮。

6、在d出页面勾选“第一行包含列标题”,然后点击“下一步”。

7、选择要编辑的字段,起新名字和设置字段属性,如图所示。图中的姓名列也按照此方法设置(这里略),都设置好以后,点击“下一步”。

8、根据实际需要点选索引类型或不要索引,然后点击“下一步”。

9、为access中导入的新表起名,如起名为:sheet1。然后点击“完成”按钮。

10、导入成功后会有提示,然后点击“关闭”按钮。

11、此时左边的树中会出现名为“sheet1”的表,如图:

12、双击表名,可预览,其中红框部分即为导入的数据。

以上就是关于如何在EXCEL中嵌入ACCESS数据库查询表全部的内容,包括:如何在EXCEL中嵌入ACCESS数据库查询表、如何将excel里的数据追加到access数据库中、请教怎么在access中用VBA导入excel数据到access库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9628528.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存