假设我得到了范围 B1:BF1
另外,可变范围(即 E1:W1)
我想将上部与下部分开,因此结果将如下所示
B1:D1,X1:BF1
是否可以将这样的分割范围保存在一个变量中?
答案1
我猜你必须做一些反向Intersect
操作。不幸的是我不知道任何这样的操作。
这里有一小段代码将检查范围并查看它们重叠的位置。如果它们不重叠,它将创建一个新的范围。
Sub Test()
Dim Rng1 As Range, Rng2 As Range, Rng3 As Range, Cl As Range
With ThisWorkbook.Sheets("Sheet1")
Set Rng1 = .Range("B1:BF1")
Set Rng2 = .Range("E1:W1")
For Each Cl In Rng1
If Intersect(Rng2, Cl) Is Nothing Then
If Not Rng3 Is Nothing Then
Set Rng3 = Union(Rng3, Cl)
Else
Set Rng3 = Cl
End If
End If
Next Cl
Debug.Print Rng3.Address
End With
End Sub
我希望这能帮助你开始。