Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

【Access小品】国中之国--Excel表局部数据导入示例

时 间:2015-04-30 15:53:14
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【Access小品】国中之国 -- Excel表局部数据导入示例
正 文:

  世界上有四个国家是国中之国:梵蒂冈、圣马力诺、莱索托王国、摩纳哥,所谓国中之国是指其边界线为一国所包围。这都是一些比较特殊的小国,其形成的历史在此不论。

  今天,版友chinasa同志问是否可以导入Excel表中的一个局部的数据块。我觉得这就如同将Excel表中的局部数据,看成是国中之国一样。如果整体上Excel表能看成一国,并能处理的话,其国中之国当然也能处理。就此问题的处理技巧有很多种,我觉得可以借用红尘如烟同志所倡导的“一句查询代码实现Excel数据导入导出”的方法,这一方法简洁明快。只是在对待本问题时,需要经过一些变形的处理。

  红尘如烟同志的方法的核心是一个Select语句,这个语句大体写为如下:

  Select * FROM [Excel 8.0;DATABASE=E:\桌面\测试数据.xls].[Sheet1$]

  暂且不论红尘如烟同志对FROM子句的变形写法,重点关注的是[Sheet1$]。也就是说红尘如烟同志将[Sheet1$]看成一国,也就是一个数据集。那么由此推论,[Sheet1$].[A3:C20]做为国中之国,也就是一个数据子集,也是可行的。这样就可以解决在一个Sheet表中,分块来导入不同数据的问题了。也就是在一个Sheet中你尽可以放入多个表,然后用Access分别读取它们。甚至你如果需要,还可以读取一个表的部分数据。

  不过,通常我们是按表(指Sheet中的某个完整的表)来全部读取数据的,那么我们还可以更简单一些。我们可以这样来做,先在Excel中选择一个表(包括字段名和记录,如果记录不能完全确定条数,可以选择的空白记录条数多一些),然后在表的左上角的名称框中为这个选中的区域命名,比如我们命名这个区域为“Data1”。需要注意的是,Excel的Name对象(实际是一个由名称命名的数据区域),并不从属于Sheet对象。因此,调用这个对象时,只需要指明其名称即可。由此,我们的Select语句就可以这样来写了:

  Select * FROM [Excel 8.0;DATABASE=E:\桌面\测试数据.xls].[Data1]

  这样我们就可以轻松愉快的读到国中之国的数据了。至于你想进一步将这些数据导入到Access中的某个对应数据表中,只需要Insert INTO一下。这很简单,相信你懂的。

示   例

点击下载此附件

视   图



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助