Excel 使用附加条件计算不同的值

Excel 使用附加条件计算不同的值,excel,excel-formula,Excel,Excel Formula,我在excel中得到一个名为tableName的表,如下所示: ColumnA ColumnB 1111 aaaa 1111 bbbb 1111 aaaa 1111 cccc 1111 aaaa 1111 aaaa 1111 aaaa 2222 aaaa 2222 aaaa 2222 ffff 2222 aaaa 2222 aaaa 3333 bbbb 3333 bbbb 4444

我在excel中得到一个名为
tableName
的表,如下所示:

ColumnA ColumnB
 1111    aaaa
 1111    bbbb
 1111    aaaa
 1111    cccc
 1111    aaaa
 1111    aaaa
 1111    aaaa
 2222    aaaa
 2222    aaaa
 2222    ffff
 2222    aaaa
 2222    aaaa
 3333    bbbb
 3333    bbbb
 4444    aaaa
 4444    bbbb
我已经得到了这个(在单元格中
B2
):

在单元格
B1
中使用
aaaa
计算
ColumnA
中的不同值,其中
ColumnB
包含
aaaa
。这里的结果是3(1111、2222和4444),对标记列进行计数:

ColumnA ColumnB
 1111    aaaa      <----is counted lets call it 1
 1111    bbbb      <--------not counted because ColumnB isn't aaaa
 1111    aaaa      <----not counted because duplicate of 1
 1111    cccc      <--------not counted because ColumnB isn't aaaa
 1111    aaaa      <----not counted because duplicate of 1
 1111    aaaa      <----not counted because duplicate of 1
 1111    aaaa      <----not counted because duplicate of 1
 2222    aaaa      <----is counted lets call it 2
 2222    aaaa      <----not counted because duplicate of 2
 2222    ffff      <--------not counted because ColumnB isn't aaaa
 2222    aaaa      <----not counted because duplicate of 2
 2222    aaaa      <----not counted because duplicate of 2
 3333    bbbb      <--------not counted because ColumnB isn't aaaa
 3333    bbbb      <--------not counted because ColumnB isn't aaaa
 4444    aaaa      <----is counted lets call it 3
 4444    bbbb      <--------not counted because ColumnB isn't aaaa
我不知道怎么做


我的全部目标是创建一个列联表,如:

     aaaa bbbb cccc ffff
aaaa  3    2    1    1    
bbbb  2    3    1    0
cccc  1    1    1    0
ffff  1    0    0    1
试试这个:

=SUMPRODUCT((TableName[ColumnB]=B1)*  
  (0<COUNTIFS(TableName[ColumnA],TableName[ColumnA],TableName[ColumnB],A2))
/COUNTIFS(TableName[ColumnA],TableName[ColumnA],TableName[ColumnB],TableName[ColumnB]))
=SUMPRODUCT((表名[ColumnB]=B1)*

(0我无法理解您的要求。请重新措辞,可能有一个例子。被“现在我在单元格A2中有bbbb,并且希望计算相同的值,但必须有另一列在列A中具有相同的值,并且在列B中具有相同的值(=BBBBBB)”;请参阅@Jeeped sorry,更正了“行”中的“列”(并添加了更多示例)@Ben需要注意的一点是:为了使其可拖动,所有的
TableName[ColumnB]
都必须是
TableName[[ColumnB]:[ColumnB]]
与A列相同。还要确保
B1
B$1
并且
A2
$A2
@ScottCraner我说的对吗,它已经可以垂直拖动了?或者我通过垂直拖动来释放单元格了?还有
表名[[ColumnB]:[ColumnB]
还有
表名[[columnba]:[ColumnB]]
(两者都需要)让它水平拖动?@ScottCraner谢谢。(和ScottCraner)A.S.H.(和ScottCraner)我用它作为CSE公式使它水平拖动;@Ben不,CSE仍然不需要:把它放在第一位,然后上下拖动。
=SUMPRODUCT((tablename[[ColumnB]:[ColumnB]=B$1)*(0是的,我从您之前的评论中了解到了这一点。我以前的解决方案是使用CSE(这样您就不需要
tablename[[ColumnB]:[ColumnB]
-语法了。仅供参考,我在问题中使用CSE的原因)
     aaaa bbbb cccc ffff
aaaa  3    2    1    1    
bbbb  2    3    1    0
cccc  1    1    1    0
ffff  1    0    0    1
=SUMPRODUCT((TableName[ColumnB]=B1)*  
  (0<COUNTIFS(TableName[ColumnA],TableName[ColumnA],TableName[ColumnB],A2))
/COUNTIFS(TableName[ColumnA],TableName[ColumnA],TableName[ColumnB],TableName[ColumnB]))