有人知道我该怎么做吗?
举个例子:我正在创建一个宏,该宏要求用户用2个单元格填充UserForm。 (假设这些是单元格“ D1”和“ F2”)。我想在代码的其他部分中(在搜索关键字之后)在这两个单元格之间使用此偏移量。请记住,用户可以在工作表上选择任意两个单元格。
我无法找到如何完成此目标的方法。任何帮助表示赞赏。
请尝试使用此功能。
它将返回行和列之间的差异。如果需要绝对值,只需取消注释代码行即可使差值变为正数:
Private Function cellsOffsetRC(Cell1 As Range, Cell2 As Range) As Variant
Dim calOff As Long, rowsOff As Long, arrOff(1) As Variant
arrOff(0) = Cell2.Row - Cell1.Row
'If arrOff(0) < 0 Then arrOff(0) = arrOff(0) * (-1)
arrOff(1) = Cell2.Column - Cell1.Column
'If arrOff(1) < 0 Then arrOff(1) = arrOff(1) * (-1)
cellsOffsetRC = arrOff
End Function
可以用像这样的测试子检查:
Sub testCellsOffsetRC()
Dim arrOff As Variant
arrOff = cellsOffsetRC(Range("D1"), Range("F2"))
Debug.Print "Rows Offset: " & arrOff(0),"Columns Offset: " & arrOff(1)
End Sub