Office中国论坛/Access中国论坛
标题:
【Access小品】各找各妈--Access运行Excel宏示例
[打印本页]
作者:
todaynew
时间:
2015-1-21 16:38
标题:
【Access小品】各找各妈--Access运行Excel宏示例
我们经常需要用Access处理一些Excel表的事务,除了导入导出外,还会涉及到数据的整理等复杂问题。我们可以在Access中引用Excel的对象,来完成这些任务。但有时候这并不是最好的选择,其原因有二:其一是Access中使用Excel表对象时,一些自动的功能并不如Excel中实现的那么好,比较典型的是系统的枚举常量总是需要去猜或者到处找资料;其二是有些在Excel中用代码实现的功能,在Access的指挥下会失常,比如锁定单元格,锁定表,命名区域等等。如果你曾经折腾过这类问题,对此会深有体会。
由此,我们希望在Excel中编写宏,然后在Access中来调用这些宏。假如这样能实现的话,也就各得其所,也就是各回各家各找各妈,发挥各自的优势。这个假设能成立吗?答案是肯定的。我们可以通过两个对象来调用Excel宏,其一是Workbook对象可以用RunAutoMacros方法来调用四个自动宏(启动、关闭、活动、不活动),当然这不太灵活;其二是Excel.Application对象,这个对象有一个Run方法可以运行宏,而且还可以带入30个以内的参数。
本示例假设这样一种场景,在Excel表中有一个“原始表”需要进行整理,并在同一个工作簿中生产另外一个表
,表名为“数据表”,这个数据表符合Access导入的规范。这个整理的工作由Excel中编写的宏(名为:数据整理)完成。Access窗体中设置一个按钮,按钮单击事件中首先调用Excel中的宏,对原始表进行整理,然后执行一段代码,将数据导入到Access的对应数据表中。
当然,这只是为了演示宏的调用方法,并非这个示例一定需要这样处理。所以你不必说:“何必那么麻烦,我可以直接读原始表中的数据,并导入到Access。”
示例:
[attach]55493[/attach]
视图:
[attach]55494[/attach]
作者:
tmtony
时间:
2015-1-21 17:29
老汉高产啊
作者:
access学习交流
时间:
2015-1-22 09:49
好东西,赞
作者:
zpy2
时间:
2015-1-24 06:00
好东西,赞
作者:
purplerose
时间:
2016-4-2 22:19
经典呀,下载学习一下!谢了
作者:
QQ214189912
时间:
2016-7-7 17:07
谢谢分享
作者:
李力军2
时间:
2016-7-30 15:31
这个粟子实在,顶一个
作者:
owen2016
时间:
2016-8-20 15:33
已经下载学习,谢谢
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3