我有两个Excel文件,在第一个表中:
Date Water Eggs Potato
01/09/15 10 52 642
第二名:
Date Eggs Potato Water Banana
01/09/15 50 300 15 10
在我需要的结果文件或表格中:
Date Water Eggs Potato Banana
01/09/15 25 102 942 10
你可以看到我从第一和第二张表中总结出来。在第一个表中,我没有列Banana
,但在结果表中必须插入其列。
如何做到这一点,问题可以通过任何功能解决,还是我需要使用VBA?
答案 0 :(得分:1)
对列进行排序,使它们的顺序相同。然后将一个表附加到另一个表,但只保留一组(完整的)列标签。应用详细{/ 3}}的拆迁程序。当你到达新表时,从中创建一个数据透视表,其中列为COLUMN,行为ROWS,值为VALUES为和。
答案 1 :(得分:1)
此解决方案假设如下:
B6:E8
和G6:K8
范围内的同一工作表中(基于@Valeriu的响应)。范围包括标题,范围可根据用户的要求进行调整(参见图1) M6:Q12
所有公式均为FormulaArray
(按 [Ctrl]
+ [Shift]
+ [Enter]
同时)
日期:为了从两个表中提取唯一日期的组合列表,请在FormulaArray
中输入此M7
,然后复制到最后一条记录
=IFERROR( INDEX( $B$6:$B$8, MATCH( 0, COUNTIF( M$6:M7, $B$6:$B$8 ), 0 ) * 1 ),
IFERROR( INDEX( $G$6:$G$8, MATCH( 0, COUNTIF( M$6:M7, $G$6:$G$8 ), 0 ) * 1 ), "" ))
然后,要获取每种类型的总计,请在单元格FormulaArray
中输入此N7
,然后复制到最后一条记录,然后复制到O7:Q7
=IF( EXACT( $M7, "" ), "",
IFERROR( SUMIF( $B$6:$B$8, $M7, INDEX( $C$6:$E$8, 0, MATCH( N$6, $C$6:$E$6, 0 ))), 0 )
+ IFERROR( SUMIF( $G$6:$G$8, $M7, INDEX( $H$6:$K$8, 0, MATCH( N$6, $H$6:$K$6, 0 ))), 0 ))