如何检查当前单元格是否在第一行表格中?

我需要检查表格中的当前单元格是否在第一行。 它必须检查自己的桌子里面,而不只是表格。 我找不到任何信息。 这可能使用一个公式? 如果是这样,我想做一个特殊的操作。

使用本地工作表函数构造一个简单的公式,可以通过减去标题行来检索ListObject(又名结构化 )表中的相对行位置。

=ROW()-ROW(Table1[#Headers]) 

可以将结果与1进行比较,以返回布尔结果,以确定您是否在表的第一行。

listobject_relativerow

考虑:

 Sub WhereIsTheActiveCell() Dim EquivRange As Range, r As Range Dim lo As ListObject Dim nFirstRow As Long, nLastRow As Long Set lo = ActiveSheet.ListObjects(1) With lo Set EquivRange = .DataBodyRange nFirstRow = EquivRange.Row nLastRow = EquivRange.Rows.Count + EquivRange.Row - 1 If ActiveCell.Row = nFirstRow Then MsgBox "activecell is in the first data row of the table" ElseIf ActiveCell.Row = nFirstRow - 1 Then MsgBox "activecell is the the header row of the table" End If End With End Sub