2013-03-13 84 views
0

在Excel 2010中,如何使用VBA創建兩個獨立區域的兩列範圍?Excel VBA聯盟

下面的代碼使用聯盟,但所述組合的範圍(rngAll)僅包含第一列(RNG1):

Dim rng1 As Range 
Dim rng2 As Range 
Dim rngAll As Range 

Set rng1 = Range(TableColumn1) 
Set rng2 = Range(TableColumn2) 
Set rngAll = Application.Union(rng1, rng2) 

感謝。

+0

什麼是TableColumn1和2? – 2013-03-13 15:09:43

+0

它們是在函數的輸入變量中定義的表引用,例如ThisWorkbook.Worksheets(「Data」)。Range(「Table [Column_Name]」) – user1423997 2013-03-13 15:20:37

+0

你能聯合他們兩個嗎? – 2013-03-13 17:14:19

回答

1

Sheet出線Range對象試試這個:

Set rng1 = Sheets(1).Range(TableColumn1) 
Set rng2 = Sheets(1).Range(TableColumn2) 
Set rngAll = Application.Union(rng1, rng2) 

然後在Watch WindowImmediate Window,您可以檢查rngAll.Address。它應該向你展示兩個範圍。

+0

感謝您的回覆bonCodigo。 這是函數的一部分,當在子過程中測試完全符合rng1和rng2;這是否有所作爲? – user1423997 2013-03-13 14:52:09

+0

請嘗試讓我們知道它是否正常工作。否則,社區可以幫助您找到其他途徑。 – bonCodigo 2013-03-13 14:53:40

+0

好的,我看到地址顯示了兩個範圍,所以謝謝。那麼如何將新的兩列範圍傳遞給一個也有兩列的數組? – user1423997 2013-03-14 12:26:07