Excel - 根据条件创建查找值数组的公式
Excel - Formula to create an array of lookup values based on a criteria
我一直在寻找这个看似简单的问题的解决方案,但到目前为止没有成功。我在 Excel 中有一个 table 是这样的:
Column 1 Column 2
apples 1
apples 2
bananas 5
apples 3
bananas 4
我需要的是一个公式,根据第 1 列的条件 returns 第 2 列中的值的数组。因此,如果我选择 "apples",我的输出数组应该是 { 1,2,3}。该输出应该兼容在标准 SUM(SUMIFS()) 公式中使用。
提前感谢您的任何见解
此致,
安德烈
编辑:输出数组中元素的顺序并不重要
我假设你不想要这样的东西
=IF(A2:A6="apples",B2:B6,"")
对于您的示例,将 return 您的值以及 "null strings" 像这样
{1;2;"";3;""}
您可以使用此版本 return 值按升序排列
=SMALL(IF(A2:A6="apples",B2:B6),ROW(INDIRECT("1:"&COUNTIF(A2:A6,"apples"))))
那会给你
{1;2;3}
如果你在另一个公式中使用它,你需要 "array enter" 和 CTRL+SHIFT+输入
我一直在寻找这个看似简单的问题的解决方案,但到目前为止没有成功。我在 Excel 中有一个 table 是这样的:
Column 1 Column 2
apples 1
apples 2
bananas 5
apples 3
bananas 4
我需要的是一个公式,根据第 1 列的条件 returns 第 2 列中的值的数组。因此,如果我选择 "apples",我的输出数组应该是 { 1,2,3}。该输出应该兼容在标准 SUM(SUMIFS()) 公式中使用。
提前感谢您的任何见解
此致, 安德烈
编辑:输出数组中元素的顺序并不重要
我假设你不想要这样的东西
=IF(A2:A6="apples",B2:B6,"")
对于您的示例,将 return 您的值以及 "null strings" 像这样
{1;2;"";3;""}
您可以使用此版本 return 值按升序排列
=SMALL(IF(A2:A6="apples",B2:B6),ROW(INDIRECT("1:"&COUNTIF(A2:A6,"apples"))))
那会给你
{1;2;3}
如果你在另一个公式中使用它,你需要 "array enter" 和 CTRL+SHIFT+输入