Access交流中心

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

用Access的VBA导入excel文件到access表

龚隽  发表于:2010-02-08 11:37:24  
复制

如题,要做一个导入导出功能.

先将excel文件导入到access的表,但按照如下语句:

Docmd.TransferSpreadsheet   acImport,   ,   "temp1",   "C:\Book1.xls",   False,   "Sheet1!"

写的:

DoCmd.TransferSpreadsheet acImport, , "fz2", "d:\fz_export.xls", True, "Sheet1!"

系统会提示

 

提示---------------------------
Microsoft Office Access
---------------------------
'Sheet1$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。
---------------------------
确定  
---------------------------

 

如果我按照打开文件路径的方法,

DoCmd.TransferSpreadsheet acImport, , "fz2", " & CommonDialog8.FileName & ", True, "Sheet1!"

 

系统又会提示:

 

---------------------------
Microsoft Office Access
---------------------------
Microsoft Jet 数据库引擎找不到对象'D:\& CommonDialog8.FileName &'。请确定对象是否存在,并正确地写出它的名称和路径。
---------------------------
确定  
---------------------------

 

请各位高手帮帮忙啊!!

 

Top
王樵民 发表于:2010-02-08 12:02:35

DoCmd.TransferSpreadsheet 导入、导出格式不对,这个命令可带6个参数

参数1:迁移类型(导入、导出、链接)三种选择,默认值为“导入”。;

参数2:电子表类型(Microsoft Excel 3.0、Microsoft Excel 4.0、Microsoft Excel 5.0/95 Workbook、Microsoft Excel 97 - Excel 2003 Workbook、Excel Binary Workbook、Excel Workbook、Lotus 1-2-3 (WK1)、Lotus 1-2-3 (WK3)、Lotus 1-2-3 (WJ2)、Lotus 1-2-3 (WK4))10中选择,默认值为Excel Workbook”;

参数3:表名称(要导入、导出或链接的表的名称);

参数4:文件名称(要导入、导出或链接的文件名称);

参数5:带有字段名称(是、否);

参数6:范围,导出到电子表格时,必须将该参数保留为空。如果输入范围,导出将失败。

参数6一般情况下为空,所以你是不肯成功的。



龚隽 发表于:2010-02-08 15:53:03
非常感谢!

michaelx 发表于:2010-02-08 21:02:46

看完并消化了以下的例子,问题自然解决。

Excel自定义匹配导入Access示范

http://www.accessoft.com/article-show.asp?id=4245



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