2014-07-14 91 views
0

我使用VBA來填充,從數據透視表圖表。首先(如第一張圖),我根據月份和類別(A,C,U等)對值進行排序。後來(如第二張圖),我只想按類別排序。標籤(?)中VBA生成的Excel圖表。此外排序/着色

這個問題和嚴重頭痛的根源在於我想要訂書釘下的類別名稱,就像我在上面的圖片中有幾個月一樣。出於某種原因,僅顯示第一個類別(具有最大值的那個)的名稱。

我曾試着用搜索引擎,但我不知道該標籤(?)什麼是所謂的。我用ApplyDataLabels嘗試了一些東西,但它不完全正確;它在訂書釘頂部添加了標籤。我希望他們在X軸下。

另一方面,我希望同一類別始終具有相同的顏色,即使我在圖表之間按不同方式對它們進行排序(先按月份和名稱,後面再按發生次數排序)。這甚至可能嗎? (我打算第一個圖表類別按字母順序排序後)

提前非常感謝! enter image description here

回答

0

對於標籤嘗試此代碼:

Dim myarray As Variant 
myarray = Array("A", "B", "C") 
ActiveChart.SeriesCollection(1).XValues = myarray 

這設置類別軸標籤的數組中的值。一系列的XValues是你正在尋找的東西。看起來你有多個系列,但我想上面的代碼應該仍然有效。

至於第二個問題。我認爲該系列的顏色是根據您將該系列添加到圖表的順序設置的。因此,您可以始終以相同的順序將該系列添加到圖表。另一種辦法是有,通過圖表中的所有系列和顏色他們根據系列名稱循環的過程。沿着這些線:

For i = 1 To ActiveChart.SeriesCollection.Count 
    If (ActiveChart.SeriesCollection(i).Name = "A") Then 
     ActiveChart.SeriesCollection(i).Format.Fill.ForeColor.RGB = RGB(255, 0, 0) 
    End If 
Next 
+0

謝謝你的回覆!我其實將XValue設置爲我想要的範圍,但它只返回第一個值。 我會稍後嘗試您的建議給我的第二個問題,非常感謝! – Emmy