Access交流中心

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

Excel工作表无法导入Access

xt307  发表于:2011-11-01 12:33:27  
复制

我遇到这样一种情况,很困扰

 

问题描述如下:

 

1)第一次将一个Excel表导入到Access创建了一个新Access表A------成功

2)将这个新的Access表里的记录全部删除,再重新导入刚才的那个Excel表到Access表A里面-----失败

 

如果将Access表A导出到Excel表,用这个Excel表再导回到Access表A-------没问题

 

 

那为什么操作2)就不能成功呢? 是哪里有问题呢?

 

请帮忙看看。谢谢

 

该Excel表见附件

点击下载此附件

 

Top
煮江品茶 发表于:2011-11-01 13:24:35
要看采用什么样的导入方法,不同的方法出现的问题不一样,解决的方法有不同。

xt307 发表于:2011-11-01 13:34:34

我用的公司的英文版Access2003,选中在objects下的table,点击鼠标右键使用import导入



西出阳关无故人 发表于:2011-11-01 22:32:05

我测试的是你的Month-Year那张表,第一次导入的时候会自动在access中把第5列标记为“字段5”,第6列标记为“字段6”,主要是第5、6列没有列头标题。

在第二次导入之前,如果不修改excel的列头标题,就会提示错误。如果第二次导入前把excel的第5列标记为“字段5”,第6列标记为“字段6”,导入就成功了!

试着分析一下:在第一次导入的时候,access实际上可能是按照生成表查询的方式操作,而第二次导入的时候,可能是按照追加查询的方式操作的,追加查询必须要字段一一对应(好像是必须的)。



xt307 发表于:2011-11-02 11:00:45

谢谢关注

Month-Year那张表是隐藏的,不需要导入。只要导入“MDS DATA”这个表就好了。 MDS DATA这个表的列字段是齐全的



网行者 发表于:2011-11-02 21:22:48

问题出在导入后“Access表A”的字段名与EXCEL表标题名不能对应,所以不能导入。

解决办法:步骤1、将“Access表A”的字段名复制到EXCEL表,作为EXCEL表标题名

          步骤2、在EXCEL表中对标题做“自动筛选”,将表中最后为空但有下拉箭头的列删除即可



西出阳关无故人 发表于:2011-11-02 22:31:29

貌似问题出在excel的“Line Sch. Date”这个字段上。第一次导入后,access就把它命名为“Line Sch Date”,没有那个点“.”,因为是生成表,可能access不能在字段名称中包含点“.”,所以他就把点去掉了。而第二次是追加到原有表,所有的数据要根据字段一一对应,由于excel没有“Line Sch Date”这个字段,而access又没有“Line Sch. Date”这个字段,所以他认为数据不匹配而中止导入。

我们知道点“.”在access中是一个重要的运算符号,是不允许进入表、字段、窗体等的名称的。

其实,我在3楼的回答与这个基本一样,只是违反的是不一样的规则而已!



西出阳关无故人 发表于:2011-11-02 22:41:00

不论我的解释是否正确,但是至少解决了问题,至于“Month-Year”还是“MDS DATA”表,都同样存在问题。重要的是举一反三,掌握学习的方法。

 



xt307 发表于:2011-11-03 14:16:05
就是这个“点”在作怪。感谢西出阳关无故人的指教

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