2011-01-04 8 views
0

私のようなチャートがある場合:地図Excelワークシートの列

 x y 
     1 3 
     2 8 
     3 9 
     4 0 
color 3 1 

は、XとYとカラーインデックスのためのバーがあるExcelの棒グラフ(2007)を作成することも可能です各バーの最後の行(色付き)に関連付けることができますか?

+0

私はあなたが3 =赤色、1 =黒等を意味する推定? VBA(私は思うが)を使うことは可能だろうが、それはExcelのすぐに使えるチャート機能を使って行うことができるのかどうかわからない。 –

+0

はい、それはアイデアだった。私はVBAに精通していないが、私はそれを調べるだろう。ありがとう – Gayan

+0

私はVBAソリューションを提供したいのですか、それとも自分自身を調べて幸せですか?私はあなたにそれを残しておきます... –

答えて

1

このVBAスニペットは棒グラフをプロットし、列の最終値を棒のカラーインデックスとして使用します。

これを使用するには、(ヘッダと最終行を含む)データの2つの列を選択し、次のコードにF5ヒット:

Sub BarChartWithColors() 
    Dim selectedRng As Range, chartRng As Range, colorRng As Range 

    Set selectedRng = Selection 
    Set chartRng = Range(Selection.Cells(1, 1), Selection.Cells(selectedRng.Rows.Count - 1, 2)) 
    Set colorRng = Range(Selection.Cells(selectedRng.Rows.Count, 1), Selection.Cells(selectedRng.Rows.Count, 2)) 

    Charts.Add 
    ActiveChart.ChartType = xlBarClustered 
    ActiveChart.SetSourceData Source:=chartRng, PlotBy:=xlColumns 
    ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1" //Change sheet destination as appropriate 
    ActiveChart.SeriesCollection(1).Interior.ColorIndex = colorRng.Cells(1, 1) 
    ActiveChart.SeriesCollection(2).Interior.ColorIndex = colorRng.Cells(1, 2) 
End Sub 
+0

私は範囲の定義にいくつかの変更を行いましたが、現在は機能しています。ありがとう – Gayan