如果我在 A 列到 F 列的第 4 行中有数据,并且我想知道 F 是有数据的最后一列,那么我可以在 B2 中输入什么公式来获得 F 的答案?
答案1
您可以使用以下内容找到列号:
=MAX(IFERROR(MATCH(1e+99,A4:F4),0),IFERROR(MATCH("ZZZ",A4:F4),0))
如果你需要实际的信件那么:
=CHOOSE(MAX(IFERROR(MATCH(1e+99,A4:F4),0),IFERROR(MATCH("ZZZ",A4:F4),0)),"A","B","C","D","E","F")
如果想要的是该范围内的最后一个值,那么:
=INDEX(A4:F4,MAX(IFERROR(MATCH(1e+99,A4:F4),0),IFERROR(MATCH("ZZZ",A4:F4),0)))
如果行中没有数据,最后两个将会提供错误信息。
答案2
要返回第 4 行包含数据的最后一个单元格的列字母:
=LEFT(ADDRESS(1,LOOKUP(2,1/(LEN($4:$4)>0),COLUMN($4:$4)),2),FIND("$",ADDRESS(1,LOOKUP(2,1/(LEN(4:4)>0),COLUMN($4:$4)),2))-1)
- 该
LOOKUP
函数返回包含最后一个数据的列的列号。 - 该
ADDRESS
函数将其转换为具有相对列寻址的 A1 样式地址。 - 该
FIND
函数$
会根据地址类型找到紧跟列字母的那个。 - 然后,该
LEFT
函数使用结果FIND
返回适当的列字母。
如果您想要第 4 行包含数据的最后一个单元格的内容,请尝试:
=LOOKUP(2,1/(LEN($4:$4)>0),$4:$4)