谷歌电子表格相对行编号+跳过空单元格

使用Google电子表格,我需要一个列来显示相对的行编号,以便:

  1. 电子表格行可以四处移动,编号保持相对(如果我在第4行和第5行之间移动第12行,则该行变为第5行,前5变为第6行等)
  2. 使用基于给定行中的单元格值的条件,行编号单元格可以是空的(或不是)。 如果为空,则该行号被跳过,并且编号在条件不匹配的下一行中取回。

这里是一个例子:

 |  Row nbr |  B col。  |  [说明] |
 | --------- |:-------:| ----------------------------- -------- |
 |  R01 | 值1 |  |
 |  R02 | 值1 |  |
 |  R03 | 值2 |  |
 |  | 值3 |  Col.B值= 3 => Col.A是空的|
 |  R04 | 值2 | 编号占用|
 |  R05 | 值1 |  |
 |  | 值3 |  Col.B值= 3 => Col.A是空的|
 |  R06 | 值2 | 编号占用|
 | 等等。  |  |  |

这里,跳过编号的条件是“IF对应B单元=值3”(然后跳过编号)

现在,我正在使用一个符合上面要求#1的公式:

=ROW(INDIRECT("A"&ROW()&":A"))-9 

(尾部的“-9”只是一个偏移量,所以编号可以从第10行的01开始)。

所以基本上,我需要调整(或改变)这个代码,除了相对编号之外,对于N行,如果相应的B列单元格值= XYZ,那么A列单元格是空的(与编号):该行被跳过,并且编号在B单元格值≠XYZ的下一行从N取回。

这是一个Google电子表格的例子 。

许多TIA的。

我强烈build议不要在公式中使用带有明确指定偏移量的ROW() ,因为如果在表格上方删除/添加行,则必须在所有单元格中调整公式。 这里是我的解决scheme(列A:A是行号, B:B值,开始在单元格A10添加公式):

 =IF($B10="Value 3","",ROWS($B$10:$B10)-COUNTIF($B$10:$B10,"Value 3")) 

或者,如果你坚持相对的行(从顶部改变10到你的偏移量):

 =IF(INDIRECT("B"&ROW())="Value 3","",ROWS(INDIRECT("B"&10&":B"&ROW()))-COUNTIF(INDIRECT("B"&10&":B"&ROW()),"Value 3"))