我有以下基本表:
1|
2| Title....
3|
4|
5| | Row Index | Type | Etc... |
6| | 1 | abc | ..... |
7| | 2 | def | ..... |
8| | 3 | ghi | ..... |
9| | 4 | jkl | ..... |
请注意,该表不会在Excel第1行上启动。技术上ROW()-5
可以使用,但我不想对表开始的实际行进行硬编码。
Row Index
的公式是:
=ROW()-CELL("row")+1
除了在表格中编辑另一个单元格时,此方法正常。似乎公式假定您编辑的行是索引0并从那里开始行计数。
例如,如果我要编辑上表中第3行的单元格,Row Index
值将如下所示:
| Row Index | Type | Etc... |
| -1 | abc | ..... |
| 0 | def | ..... |
| 1 | ghi | ..... |
| 2 | jkl | ..... |
每次修改后,我认为必须重新编辑顶行中的单元格才能再次正确显示Row Index
值。
是否有可靠的方法在表格中显示行号?
答案 0 :(得分:1)
删除CELL("row")
并使用公式
=ROW() - 5
ROW
function返回包含公式的单元格的行号,这就是您想要的。
另一方面,CELL
function会返回有关上次更改的单元格的信息,这就是您看到这种奇怪行为的原因。
CELL(info_type,[reference])
- 参考可选。您想要了解相关信息的单元格。如果省略,则Info_type参数中指定的信息将返回 ,表示已更改的最后一个单元格 。 ...
即使CELL返回有关当前单元格的信息,您从ROW() - CELL("Row", <current_cell>) + 1
获得的内容也是常量1
,因为这两个函数相互抵消。
答案 1 :(得分:1)
如果是实际的Excel表(插入选项卡&gt;表):
=ROW()-ROW(Table1[#Headers])
或
=ROW()-ROW(Table1)+1
否则,您可以使用绝对地址:
=ROW()-ROW($5:$5)