【问题标题】:How to get the Row index of the active cell in a specific range如何获取特定范围内活动单元格的行索引
【发布时间】:2020-08-07 03:13:23
【问题描述】:

我想获取活动单元格的行索引
相对于提供的范围...

澄清我想要范围内的行索引

有点像

RangeRowIndexOfActiveCell( range1 )

应该返回活动单元格相对于指定范围的行索引

(-1 如果 ActiveCell 不在范围内... 但那是多余的)

?有什么想法

【问题讨论】:

  • 你试过ActiveCell.row吗?
  • 为您提供相对于工作表的活动行...我想要相同的信息但相对于范围...
  • activecell.row - range1.row + 1
  • 谢谢斯科特...这会成功...我想知道 excel 是否将其作为本机函数...可以处理隐藏的行和其他怪癖...跨度>

标签: excel vba range


【解决方案1】:

这会打印范围内活动单元格的索引,只要范围重叠。

Function RangeRowIndexOfActiveCell(ByVal rng As Range) As Long

    If Not Intersect(ActiveCell, rng) Is Nothing Then
        RangeRowIndexOfActiveCell = ActiveCell.row - rng.row + 1
    Else
        RangeRowIndexOfActiveCell = -1
    End If

End Function

【讨论】:

  • 感谢您的信息.. 但即使范围不重叠,这也必须有效...所以我不能使用相交... Scott Craner 的上述解决方案刚刚解决了问题
  • @ZEE 我把它放在一起是因为你说如果它在范围之外你希望它返回 -1...
猜你喜欢
  • 2019-03-27
  • 2018-03-13
  • 2019-05-04
  • 2018-10-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-07
相关资源
最近更新 更多