[英]INDEX MATCH Formula in Excel
I recently took over this spreadsheet from someone who left the company. 我最近从离开公司的某人那里接过了这个电子表格。 Formula in T column:
T栏中的公式:
=INDEX(BFTable, MATCH(1, (UPPER(LEFT(ST, 2))=$E$1:$E$315)*
(ProcessingDate>=$A$1:$A$315)*(ProcessingDate<=$B$1:$B$315)*
(EffectiveDate>=$C$1:$C$315)*(EffectiveDate<=$D$1:$D$315)*
($AI3=$P$1:$P$315)*($F$1:$F$315="HM"),0),COLUMN()-COLUMN($T$2)+1)
Could someone explain to me what this formula is trying to do? 有人可以向我解释这个公式要做什么吗? What is ST?
什么是ST? The output is the same with processing date in A column.
输出与A列中的处理日期相同。 There is no BFTable, although the tab name is BF.
尽管选项卡名称为BF,但没有BFTable。
Thanks, 谢谢,
SC SC
The pieces BFTable
and ST
are probably named ranges. BFTable
和ST
可能是命名范围。
What the formula does is look up in the range BFTable
the row associated with the MATCH(...)
part and the column given by COLUMN()-COLUMN($T$2)+1
. 该公式的作用是在
BFTable
范围中BFTable
与MATCH(...)
部分关联的行以及COLUMN()-COLUMN($T$2)+1
给出的COLUMN()-COLUMN($T$2)+1
。
The MATCH
section is a long conditional. MATCH
部分是很长的条件。 It searches for the first case where all of the following conditions are true and returns the index of that row: 它搜索满足以下所有条件的第一种情况,并返回该行的索引:
UPPER(LEFT(ST, 2))=$E$1:$E$315
ProcessingDate>=$A$1:$A$315
ProcessingDate<=$B$1:$B$315
EffectiveDate>=$C$1:$C$315
EffectiveDate<=$D$1:$D$315
$AI3=$P$1:$P$315
$F$1:$F$315="HM"
If they all return TRUE
, then multiplying them together results in 1
, but if any of them returns FALSE
, then multiplying them results in 0
, which won't match to 1
(the first argument of the MATCH
function). 如果它们都返回
TRUE
,则将它们相乘将得到1
,但是如果它们中的任何一个都将返回FALSE
,则将它们相乘将得到0
,它将与1
不匹配( MATCH
函数的第一个参数)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.