1在Access中创建对Excel工作簿的链接:在Access中选择“外部数据——导入——Excel”。
2在“获取外部数据”对话框中选择“通过创建链接表来链接到数据源”。
必须为每个Excel工作簿重复该过程直到将它们都链接到数据库。结果如下图所示。
3在SQL视图中开始新的查询,单击“创建——其他——查询设计”。
4选择“查询工具-设计”中的“SQL视图”
5在SQL视图中,为所有链接的Excel表输入Select语句,在每个Select语句间使用Union *** 作符,在SQL视图中输入选择查询语句。
6运行查询后,结果将是包含从所有链接的文件中获取并合并后的数据。
只要链接的Excel文件在相同的位置,每次打开数据库时Access将自动刷新链接以获取最新数据。这意味着只需设置一次,然后在每次需要重新组合Excel文件时运行联合查询。
然而,默认情况下,UNION *** 作符会移除数据中的任何重复行。如果知道数据中有重复行,并且想保留它们,那么需要使用UNION ALL,以允许传递重复行。
将excel表格中的数据导入到access中有多种方法,视用户的使用水平而定。
(1)初级用户
A、如果EXCEL表头的字段与access数据表的字段是一一匹配的,那在EXCEL中选中准备导入的连续数据块,再打开access数据库中的数据库,在菜单“编辑”中选择“粘贴追加”命令即可批量导入数据。
B、在access编辑器中打开“文件”>“获取外部数据”>“导入”命令,再选择本地EXCEL文件,选好相应字段即可实现批量导入。
(2)高级用户。
使用VBA或者VBS等编程方法。因使用过程较为复杂,难以简短回答,建议参考专业文档。
在“添加表格”页面(创建新的自定义应用程序时您将看到的第一项内容)上,您可以从Excel工作簿、ODBC数据源、文本/CSV文件、SharePoint列表以及其他Access数据库导入数据。
方法一:在eccel VBA编辑器编写代码,使用FOR循环导入:
Sub 利用Excel的VBA将数据写入Access()
'定义ADODB 连接Access数据库
Dim Cnn As New ADODBConnection
Dim Rs As New ADODBRecordset
Dim strCon As String
Dim strFileName As String '数据库文件名
strFileName = InputBox("请输入文件路径及文件名:", "Excel传递数据至Access", "E:\ExcelTest\Staffmdb")
'连接字符串,我这里是Access2010,所提供者参数为:Provider=MicrosoftACEOLEDB120;
'如果此参数不能使用,根据自己的电脑修改这个字符串
'至于连接至的数据库名,根据自己的电脑修改,或用一个对话框或其他方式将此值传递进程序
strCon = "provider=MicrosoftjetOLEDB40;" _
& "Data Source=" & strFileName & ";"
CnnOpen strCon
RsActiveConnection = Cnn
RsLockType = adLockOptimistic
RsOpen "Employee" '假设表为Employee
'定义Excel表中的数据区域以写入Access
Dim Sht As Worksheet
Dim Rn As Long
Dim Cn As Long
Set Sht = ThisWorkbookSheets("Sheet1")
'假设将 Sheet1 表的 2-6行的1、2、3列写入Access表
For Rn = 2 To 6
RsAddNew
Rs!num = ShtCells(Rn, 1) ’num,name,department是数据库中指定表的字段
Rs!Name = ShtCells(Rn, 2)
Rs!department = ShtCells(Rn, 3)
RsUpdate
Next Rn
MsgBox "完成!"
RsClose
CnnClose
Set Rs = Nothing
Set Cnn = Nothing
Set Sht = Nothing
End Sub
方法二:在access VBA编辑器中编写代码
Sub ExcelToAccess()
DoCmdTransferSpreadsheet acImport, , "Staff", "E:\ExcelTest\Employeexls", True, "Sheet1!" ‘DoCmdTransferSpreadsheet是access编辑器中函数
End Sub
以上就是关于怎么将一个Excel数据文件批量导入Access数据库的一个表中全部的内容,包括:怎么将一个Excel数据文件批量导入Access数据库的一个表中、如何将excel表格中的数据导入到access中、如何将Excel中的数据导入到Access数据库中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)