前日完成将多个Excel文件批量导入某个Excel文件中老婆规定的任务后,老婆又提出了新的要求:
本文中用到的Excel文件及VBA宏可以在此处(TBD)下载。
1 | 工作表 1 |
2 | 工作表 2 |
3 | 工作表 3 |
4 | 工作表 4 |
5 | 工作表 5 |
6 | 工作表 6 |
7 | 工作表 7 |
8 | 工作表 8 |
9 | 工作表 9 |
10 | 工作表 10 |
对应的各个worksheet的名字(Name)是:01工作表 1,02工作表 2,03工作表 3,……,10工作表 10.
待导入的Excel文件的名字为“02 某某银行XX项目_工作表 1_20110701.xls”。
Update 2011-07-13 21:50
应老婆的要求,更新了程序,遇到并解决的问题有:
Application.DisplayAlerts = True
newWB.Close SaveChanges:=False ' close without change Application.DisplayAlerts = True
Update 2011-07-14 15:37
傻瓜型用户的需求就是无穷无尽啊……我老婆发现在选择不连续的区域时,只有第一个区域会被处理,其他的没有变化。顶着挨骂的压力Google之后才知道,原来Slection.Areas可以包含所有不连续的选择,然后通过遍历,处理所有的选择……程序改动如下。
实现前三个需求的代码如下(Update 2011-07-14 15:37):
如要自动导入每个worksheet的特定单元格(L2:L6)到表2中的D,E,F,G,H列,可以使用下面的UpdateCells宏。