在Excel 2016中匹配function部件

我有这个function:

星号(PositionParameter [[#All],[Position Revised]] = $ C94)星号(PositionParameter [[#All],[Campus Type Short]] = G $ 3) Campus Num Arbitrary]] = G $ 1),0))

我无法弄清楚它的function 我不知道星号是什么。 PositionParameter是工作表的名称,Position Revised是列的名称,Campus Type Short是列的名称,Campus Num Arbitrary是列的名称。 假设在第一个PositionParameter()和第二个PositionParameter()之间有一个星号。 第二个PositionParameter()和第三个PositionParameter()之间应该有另一个星号,但是它被渲染为一个斜体。 我把星号拿出来拼出来。 工具提示告诉我这是假设返回某种数组,但我无法弄清楚它的组件。 有人可以向我解释星号吗? 我会很感激。

谢谢,霍华德

您的公式将返回一个单一值 – 满足所有三个条件的数据中第一行的相对位置。

它是这样工作的:

这三个条件语句中的每一个:

PositionParameter[[#All],[Position Revised]]=$C94

PositionParameter[[#All],[Campus Type Short]]=G$3

PositionParameter[[#All],[Campus Num Arbitrary]]=G$1

…..返回一个TRUE/FALSE值的数组。 将这三个数组相乘得到一个1/0值的单个数组,当满足所有条件时为1,否则为0。 这个数组形成MATCH函数的“查找数组”

“查找值”是1,所以在查找数组中查找值,并且MATCH函数的结果是第一个1的位置,其对应于满足所有条件的第一个行。

如果没有满足所有三个条件的行,则结果是#N/A

请注意,最后的零是MATCH函数的第三个参数 – 零menas必须find完全匹配。

这是一个“数组公式”,需要使用CTRL + SHIFT + ENTER进行确认

通常,您可以将此与INDEX函数结合使用,从条件满足的第一行中的另一列返回值,例如使用常规单元格引用

=INDEX(A:A,MATCH(1,(B:B="x")*(C:C="y"),0))

该公式将返回满足两个指定条件(col B =“x”和col C =“y”)的第一行中列A的值

那么,星号可以是一个号,也可以是匹配中通配符 。 从展示位置来看,我会说它是从数组或表格中乘以数据。

而且,呃… I don't know what the asterisks are for但是I took the asterisk out and spelled it out ? 为什么要这么做? 在你改变它之前它工作吗? 你在哪里find这个公式?

请阅读[mcve]。 如果没有样本数据或有关公式的其他信息,我会大胆猜测:

将其粘贴到单元格中:

 =MATCH(1,(PositionParameter[[#All],[Position Revised]]=$C94)*(PositionParameter[[#All],[Campus Type Short]]=G$3)*(PositionParameter[[#All],[Campus Num Arbitrary]]=G$1),0)) 

。 。 。 并假设它应该是一个数组, 而不是在该单元格上的Enter

点击: Ctrl + Shift + Enter创build一个数组公式。

除了上面的链接,这里还有一些其他的阅读和练习:

  • 创build一个数组公式

  • MATCHfunction


我认为某些应用程序用Excel复制并粘贴某些符号(在应用程序中是不允许的),而没有关于发生的事情的更多信息,我不能确定发生了什么。

假设*是真实的,并且公式是作为数组公式input的,那么它应该返回一个0和1的数组。

公式正在寻找位置修正= C94和校园types短= G3和校园数量任意= G1
它将为每个匹配所有这些条件的行返回1,并为每行不返回0。
如果没有行符合条件,它将返回#N / A