Excel - 从行中第一个和最后一个非空单元格中获取 header
Excel - get header from first & last non empty cells in row
我有商品的每周销售额 (D4:L6)。我想计算第一次销售的周数和最后一次销售的周数(B4:C6)。
我不知道如何解决这个问题,我在网上找到了获得连续第一个非空单元格、连续最后一个非空单元格的方法,但无法弄清楚它的 header
第一周你可以做的事:
=INDEX($D:$L,XMATCH(1,SIGN($D4:$L4),0,1) )
上周:
=INDEX($D:$L,XMATCH(1,SIGN($D4:$L4),0,-1) )
如果您真的是指周数,请将 $D:$L
更改为 $D:$L
。
一个简单的解决方法是通过以下解决方案:
首次销售(周):
B4:
{=INDEX($D$2:$L$2,MATCH(TRUE,D4:L4>0,0))}
B5:
{=INDEX($D$2:$L$2,MATCH(TRUE,D5:L5>0,0))}
B6:
{=INDEX($D$2:$L$2,MATCH(TRUE,D6:L6>0,0))}
在这种情况下,公式是矩阵公式,要在单元格中输入它们,您必须按 Ctrl+Shift+Enter。优点是兼容其他版本的Office
MATCH 函数允许引用第一个有值的单元格,从左到右搜索。
然后 INDEX 函数允许 return 对应于该引用但在另一行中的值(在本例中为第 2 行,表示日期)。
上次销售(周):
C4:
{ =INDEX($2:$2,MAX(列($D4:$L4)*($D4:$L4<>"")))}
C5:
{ =INDEX($2:$2,MAX(列($D5:$L5)*($D5:$L5<>""))}
C6:
{ =INDEX($2:$2,MAX(COLUMN($D6:$L6)*($D6:$L6<>""))}
在这种情况下,公式将查找对最后一个具有值的单元格的引用,return 与第 2 行中该引用对应的值,与前一种情况非常相似。
我有商品的每周销售额 (D4:L6)。我想计算第一次销售的周数和最后一次销售的周数(B4:C6)。
我不知道如何解决这个问题,我在网上找到了获得连续第一个非空单元格、连续最后一个非空单元格的方法,但无法弄清楚它的 header
第一周你可以做的事:
=INDEX($D:$L,XMATCH(1,SIGN($D4:$L4),0,1) )
上周:
=INDEX($D:$L,XMATCH(1,SIGN($D4:$L4),0,-1) )
如果您真的是指周数,请将 $D:$L
更改为 $D:$L
。
一个简单的解决方法是通过以下解决方案:
首次销售(周):
B4: {=INDEX($D$2:$L$2,MATCH(TRUE,D4:L4>0,0))}
B5: {=INDEX($D$2:$L$2,MATCH(TRUE,D5:L5>0,0))}
B6: {=INDEX($D$2:$L$2,MATCH(TRUE,D6:L6>0,0))}
在这种情况下,公式是矩阵公式,要在单元格中输入它们,您必须按 Ctrl+Shift+Enter。优点是兼容其他版本的Office
MATCH 函数允许引用第一个有值的单元格,从左到右搜索。 然后 INDEX 函数允许 return 对应于该引用但在另一行中的值(在本例中为第 2 行,表示日期)。
上次销售(周):
C4: { =INDEX($2:$2,MAX(列($D4:$L4)*($D4:$L4<>"")))}
C5: { =INDEX($2:$2,MAX(列($D5:$L5)*($D5:$L5<>""))}
C6: { =INDEX($2:$2,MAX(COLUMN($D6:$L6)*($D6:$L6<>""))}
在这种情况下,公式将查找对最后一个具有值的单元格的引用,return 与第 2 行中该引用对应的值,与前一种情况非常相似。