今天一个同事问我怎么样可以快速合并多个Excel的Workbook文件。 她把那些文件放在了一个目录下,每个Excel表格里没有太复杂的数据,
或是说想要合并的Sheet页没有太复杂的数据格式(我指的是数据透视图,数据透视表,smartArt图形等)。让我帮她想想办法。
我的解决方案如下:
(1)遍历该目录,得到要合并的各个Excel文件路径。(这个在前一章节里讲解过了,不清楚的请参看这里)
(2)批量导入成Access对并的一张表。(这个是本节要讲述的,之后还会讲解VB.NET版本)
(4)方向导出到一个Excel表格里。(这个在Access的Ribbon Toolbar里直接操作就可以,我就不多废话了)
好的,言归正传,开始这节的内容。
要实现在Access里导入一个Excel表格可以如何作呢?大致步骤如下:
(1)新建一个Access 2007文档,打开选中“External Data”的Tab
(2)点选Excel,一步步就可以导入一个Excel WorkBook的Sheet表了。
但是要是遇到有许许多多这样的Excel文件需要导入时,这个也是挺麻烦的。
很自然得你会想到,能不能用Access的VBA宏来实现这样的功能呢? 答案当然:Yes.
=================================
这需要用到Access里的DoCmd对象。DoCmd里有一个TransferSpreadsheet函数就能完成这个功能。
我把示例代码贴出来:
如果你的Excel表格里的第一行是Title,最后一个参数就使用True,缺省是False.
Access帮你把什么事都作了,省去了你去建立Connection的步骤,不然还要用ADO操作,太麻烦了,对初学者太深奥咯!
怎么样,很简单吧,但我得说,很小但很强大。 哈哈!!
Enjoy!