
假設我得到了範圍 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
我希望這能讓你開始。