私はA2からAF17までのデータを含むスプレッドシートを持っていますので、大部分のカラムが隠されていました:I、AB、AD、ここで、列Iは軸ラベル範囲として必要な範囲であり、列AFは値範囲です。VBAチャート:ソースデータとして最後の空でない行までの範囲
I動的値として最後の非空行までの範囲を使用してグラフを作成するために、次の符号化:軸ラベルの範囲として得られるグラフを自動的に列Iを示しているにもかかわらず、それだけですぐ
Private Sub CommandButton2_Click()
Dim MyEmbeddedChart As Chart
Set MyEmbeddedChart = Sheets("Analysis").Shapes.AddChart(Width:=634, Height:=250).Chart
With MyEmbeddedChart
.ChartType = xlBarClustered
.ChartStyle = 339
.SetSourceData Source:=Sheets("Analysis").Range("AF2", Cells(Rows.Count, 1).End(xlUp))
.Legend.Delete
.Axes(xlValue).Delete
.Axes(xlValue).MajorGridlines.Format.Line.Visible = msoFalse
.ApplyDataLabels
End With
End Sub
を列Iは今すぐ左端に表示される列であるためです。つまり、実際にはソースデータの範囲はA2:AF17であり、軸ラベルの範囲は実際にはA2:AD17です。そして、私が列を再現するとすぐに、軸ラベルが自然に崩れてしまいました。
現在のグラフが私の目的を果たしても、間違いなく理想的です。では、最後の空でない行メソッドを使用し続けながら、ソースラベルデータを軸ラベル範囲と列AFとして正確に列Iに設定するにはどうすればよいですか?
私はまだ比較的新しいVBAですが、どんな助けにも感謝しています。