请教一个excel表的问题,如何从几张工作表中筛选符合条件的记录自动汇总到另外一张表?

来源:百度知道 编辑:UC知道 时间:2024/05/02 08:47:57
具体要实现的是,如:在工作簿中有1-12月的单位工资表(表中有各个员工当月的工资信息条),在另外一张表中,能否实现在一个单元格中输入一个员工姓名,既能在下表中列出1-12月各张工资表中该员工的所有工资记录并列成表呢?(注:有可能该员工其中几个月没有领取工资,即每个月的领取工资人员名单是不一样的。)
VBA如何超作呢??请指教,或者直接给个模板给我行吗?

用vlookup函数应该是可以的

假设就是两个表,都在D:\document\目录下,一个是a.xls,一个是b.xls
a.xls里ABCD列依次是名字、一月工资、二月工资,等等
那么在b.xls里
B1=IF(ISNA(VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,2,FALSE)),"",VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,2,FALSE))
C1=IF(ISNA(VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,3,FALSE)),"",VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,3,FALSE))
D1=IF(ISNA(VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,4,FALSE)),"",VLOOKUP(A1,'D:\document\[a.xls]Sheet1'!A:E,4,FALSE))
等等
然后选中B1、C1、D1往下拖动复制就行了,只要在A列输入姓名BCD等就会相应显示数据

在每张表上查询最终返回并列出记录的话,EXCEL常用操作及函数可能鞭长莫及,要用VBA了。