|
うまくいかないですね。
下のほうが基本になるような感じですね?
時間がかかるけど1個1個で考えてみました。
Public Sub 作成グラフ(左, 上, 幅, 高, myRange As Range)
'埋め込みグラフ作成
With ActiveSheet.ChartObjects.Add(左, 上, 幅, 高).Chart
'積上げ縦棒グラフ
.ChartType = xlColumnStacked
.SetSourceData myRange, PlotBy:=xlColumns
'グラフタイトルはグラフ外に表示
'凡例
.HasLegend = True
.Legend.Position = xlLegendPositionTop
'横軸ラベル
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "日付"
'横軸日付をフォントサイズを9にする
.Axes(xlCategory).TickLabels.Font.Size = 9
'縦軸ラベル:グラフ小さくなるので非表示
'棒グラフに数値を表示する
'ActiveChart.SeriesCollection(2).DataLabels
With .SeriesCollection(1)
.HasDataLabels = True
.DataLabels.Font.Size = 8
.DataLabels.Position = xlLabelPositionCenter
.DataLabels.Interior.ColorIndex = 34
.DataLabels.Interior.Pattern = xlSolid
End With
' With .SeriesCollection(2) '上
' .HasDataLabels = True
' .DataLabels.Font.Size = 8
' .DataLabels.Position = xlLabelPositionCenter '
' .DataLabels.Interior.ColorIndex = 6
' .DataLabels.Interior.ColorIndex = xlNone
' End With
For i = 1 To 31
With .SeriesCollection(2)
.HasDataLabels = True
.Points(i).DataLabel.Font.Size = 8
.Points(i).DataLabel.Interior.ColorIndex = 7
End With
Next
'グラフ領域カラーなし
.PlotArea.Border.Weight = xlThin
.PlotArea.Interior.ColorIndex = xlNone
End With
End Sub
>シート名;月別
>項目:A1(日付:1から31まで),B1(計)C1(AA) D1(CC)
これだとなんのこっちゃ状態です。
項目名も含めて、レイアウトでちゃんと書いてください。
データ部が1行〜3行とか手抜きせずに。
こういうことを何度も書くのは面倒です。
(結構多いので、何度もといった表現になってしまいます。)
|
|