[英]Excel formula - index match address indirect rank.avg
需要帮助制定配方。
我在SQL中有数据,可以导出到excel。 在excel中,公式可以根据范围/数组中某一星期的值确定零件的等级。 这些列是每周的存储区,每次我导出时,每周的存储区都会更改(过去没有日期)。 我希望排名可以固定一个特定的日期,但是每周的每个出口中,特定列排在第一列。
我需要一个Excel公式,该公式可以在每周存储区数组中找到特定值的位置。 确定之后,我需要另一个公式来转换该列地址(例如“ AX”)以供rank.avg函数引用。
我猜这是匹配,索引,单元格,间接和rank.avg的某种组合。 到目前为止,我仅尝试了第一部分,但无法使cell(“ col”,(index(match)))返回其所在列的字母值。而是返回该列的#。
这是例子
A B C D
1 Part Rank(C) 11/28/17 12/04/17
2 Part A 1 $100 $100
3 Part B 2 $50 $125
4 Part C 3 $25 $200
B列具有等级公式,该公式确定了C列中零件(A,B,C)的等级。C列通过硬编码确定值11/28/17。
我被困在= CELL(“ address”,INDEX(C1:D1,1,MATCH(43067,C1:D1,0)))处。 当我只想要$ C或C时,它将返回$ C $ 1。之后,我打算将它与间接函数一起使用,以使其能够通过rank函数传递。 如果有人可以填补公式上的空白或想出一种更简单的方法,将不胜感激。
缺口
只获取专栏字母,您可能会对Address
和Substitute
:
=SUBSTITUTE(ADDRESS(1,MATCH(43067, C1:D1,0)+2,4), "1", "")
地址接受一列和一行,并吐出一个单元格。 因此,我们始终仅引用行1,并从地址返回任何列(由于我们从Match中的C
开始,所以返回+2
)。 然后,我们用返回的单元格地址中的1
替换掉列字母中没有的任何内容。
好吧,如果您的公式以C1
形式返回单元格引用,则可以使用以下代码进行包装:
=CHAR(64+COLUMN(C1))
只需使用您的公式更改C1
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.