我有两个动态范围,我称之为rng1和rng2。我有一个通过rng1的每个/下一个循环(例如:A2,A3,A4,A5等...)我还需要从rng2获得相同的行值(例如:T2,T3,T4,T5等),但范围并不总是相同,因此标准偏移量不起作用(我知道)。
有什么想法吗?
我如何设置范围(排除标题并找到最后一行)
lastrowTN = ws.Cells(65536, phcell.Column).End(xlUp).Row
Set rngtocopyTN = ws.Range(phcell.Offset(1, 0).Address, Cells(lastrowTN, phcell.Column))
答案 0 :(得分:2)
没有上下文很难说,但我认为Intersect方法可以实现您所需要的。它将找到一个交叉点,无论两个范围有多近或多远。所以使用你的例子:
[编辑]:我意识到你可以选择使用Cells方法(代码已经更新以显示)
Sub tgr()
Dim rng1 As Range
Dim rng2 As Range
Dim LoopCell As Range
Set rng1 = Range("A2:A5")
Set rng2 = Range("T2:T5")
For Each LoopCell In rng1.Cells
MsgBox Intersect(LoopCell.EntireRow, rng2.EntireColumn).Address
MsgBox Cells(LoopCell.Row, rng2.Column).Address
Next LoopCell
End Sub
请注意,rng1和rng2可以在任何列中,它仍然可以找到它们(当然假设它们都在同一张纸上)。