我試圖製作一個圖表,並將多個列作爲源區域。 基本上,我想選擇特定的列,我跳過一些列,並將它們合併到一個範圍。我設置了一個循環,在那裏創建一個範圍,並將其地址附加到一個字符串中,並用逗號分隔它們。我很確定這是Excel要格式化的方式。如何將多個Range對象合併爲一個,以用作Chart源
但是,我似乎無法創建此字符串的新範圍。
我希望這裏有人能幫助我。
我非常想避免,必須將列複製到新工作表,並將其全部標記爲範圍。
我有以下的代碼,使得所述組合的範圍:
'Loops for each number of sections
For Z = 1 To Sheet1.txtNoSections
'Get gauge to use
Section = Workbooks(ThisWorkbook.Name).Worksheets(1).Cells(26 + Z, 6).Value
'Sets varibel for distance from root
Dist = Workbooks(ThisWorkbook.Name).Worksheets(1).Cells(26 + Z, 3).Value
'Get range to use
Set ChartRange = ActiveSheet.Range(ActiveCell, ActiveCell.Offset(rc, Section))
RangeString = RangeString & ChartRange.AddressLocal
If Z <> 1 Then
RangeString = RangeString & ","
End If
Next Z
我已經然後試圖得到一個新的範圍內這樣的事情,但沒有運氣。
Dim ActualRange As Range
Set ActualRange = ActiveSheet.Range(RangeString)
當打印RangeString,它看起來像這樣: $S$2$V$6181$S$2:$X$6181,$S$2:$Z$6181,$S$2:$AB$6181,$S$2:$AD$6181,$S$2:$AF$6181,$S$2:$AH$6181,$S$2:$AJ$6181,$S$2:$AL$6181,$S$2:$AN$6181,$S$2:$AP$6181,$S$2:$AR$6181,$S$2:$AT$6181,$S$2:$AV$6181,$S$2:$AX$6181,$S$2:$AZ$6181,$S$2:$BB$6181,$S$2:$BD$6181,$S$2:$BF$6181,$S$2:$BH$6181,$S$2:$BJ$6181,$S$2:$BL$6181,$S$2:$BN$6181,$S$2:$BP$6181
似乎像工會一樣會做。
你最好porbbably更好地運用[聯盟](http://www.dailydoseofexcel.com/archives/2005/01/16/union-and-intersect/)方法不是連接範圍(其中獲」如果你的範圍以逗號','結尾,你就可以工作) – JMax 2012-03-28 08:57:35
你可以在運行代碼後發佈'RangeString'的樣子嗎?你可以在'Next Z'後面加上'Debug.Print RangeString'並檢查它的值。編輯:好點Jmax :) – 2012-03-28 08:58:01
@JMax,當然我的字符串以逗號結尾。我已經改變了它,但是當我嘗試設置範圍時它仍然失敗。 – Nicolai 2012-03-28 10:06:26