Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]从多个EXCEL文件中导入到ACCESS中一个表

悍将  发表于:2009-03-25 23:43:46  
复制

我将数据从单位的软件上导入到n个工作簿上,怎么样才能一次性操作导入到access中的一个表进行编辑,不用一个个去导入?

 

Top
捉猫鼠 发表于:2009-03-26 00:30:24

 DoCmd.TransferSpreadsheet acImport, 8, "access表名", "C:\Documents and Settings\LWL\桌面\新建 Microsoft Excel 工作表.xls", True, "" 

这句代码可以将一个工作簿导入到access中,要是导入多个,连续写这个代码,写不同被导入表名,还是可以将多个表一起导入,但是这样很麻烦,有没有一个例子,就是全选这个文件夹里所有的表后,将其一次性导入access同个表里?

默认access导入对话框,只能选择一个表,能不能写代码,全选一个文件夹里所有表,一次性导入?谢谢各位老师!



捉猫鼠 发表于:2009-03-26 00:31:17
当然前提是每张工作簿的字段数及名称、类型都是是一样的。

捉猫鼠 发表于:2009-03-26 19:18:33
各位老师请指点。谢谢。

捉猫鼠 发表于:2009-03-26 20:13:55

DoCmd.TransferSpreadsheet acImport, 8, "access表名", "C:\Documents and Settings\LWL\桌面\新建 Microsoft Excel 工作表.xls", True, "" 

针对这句代码,我有一个思路,就是对 "新建 Microsoft Excel 工作表.xls"定义一个变量,循环这个文件夹里面所有的表,一次性导入到access中,就是不知道怎么写?



白云鹏 发表于:2009-03-26 20:41:44

Set exBook = exapp.Workbooks.Open(CurrentProject.Path & "D:\ihub\report\Receiptadviceupload.xls")
    For i = 1 To exBook.Sheets.Count
    DoCmd.TransferSpreadsheet acImport, , "pre_adviceµ¼Èë¼Ç¼", CurrentProject.Path & "D:\ihub\report\Receiptadviceupload.xls", True, exBook.Worksheets(i).Name & "!"
    Next
    exBook.Close
    Set exBook = Nothing

 for your reference.



白云鹏 发表于:2009-03-26 20:42:41

但是如果表格里有宏,我发现不能打开。



ACMAIN.CHM 发表于:2009-03-26 20:53:47
insert into yourAccessTable
select * from [Excel 8.0;Database=c:\temp\book1.xls].[Sheet1]
union all
select * from [Excel 8.0;Database=c:\temp\book2.xls].[Sheet1]
union all
select * from [Excel 8.0;Database=c:\temp\book3.xls].[Sheet1]
union all
select * from [Excel 8.0;Database=c:\temp\book4.xls].[Sheet1]
 
ACCESS与外部其它数据交互 - IN 子句 -连接外部数据库
http://blog.csdn.net/ACMAIN_CHM/archive/2009/01/15/3789702.aspx

**************
*   一切皆有可能   *
**************


ACMAIN - Access论坛回贴准则(个人)


QQ群 48866293 / 12035577 / 7440532 / 13666209
http://www.accessbbs.cn/bbs/index.php
http://www.accessoft.com/bbs/index.asp
http://www.office-cn.net/vvb/?fromuid=141646
http://www.access-programmers.co.uk/forums

http://www.office-cn.net/home/space.php?uid=141646


捉猫鼠 发表于:2009-03-26 22:31:07

boyboyvox老师 这段代码是将 同一个工作簿上若干工作表导入到一个access表中,我想的是,将不同工作簿导入到一个表中。

ACMAIN0CHM 老师,这段代码是要对逐一修改代码,



ACMAIN.CHM 发表于:2009-03-26 22:40:53

这段代码是要对逐一修改代码,

 

这是什么意思?7楼代码不就是让你一次性导入多个excel的xls文件(book1.xls,book2.xls....) 到ACCESS的一个表中?

 

建议你能举例说明你的需求。

 



竹笛 发表于:2009-03-26 23:17:36
捉猫鼠 发表于:2009-03-26 23:43:27

谢谢boyboyvoxACMAIN0CHM两位老师热心的指导,可能是我没有传上附件,没能表达我具体的需求,但从老师的指导也让我学到很多东东。

在此感谢竹笛老师帮助,这个实例就是我想要的结果。论坛上这么多热心人帮助,相信自己也要更加努力了。



yy 发表于:2020-08-21 00:41:31
学习到了,谢谢!

总记录:12篇  页次:1/1 9 1 :