みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

EXCEL VBA:埋め込みグラフオブジェクトの命名方法について (続き1)

http://oshiete1.goo.ne.jp/qa3258443.html
の質問の続きです。
-------------------------------------------------------------
Sub sample()

Dim myRange As Range
Set myRange = Range("A1:D2")

With Worksheets("Sheet1").ChartObjects.Add(50, 50, 300, 200).Chart
.ChartType = xlPie
.SetSourceData Source:=myRange, PlotBy:=xlRows
.ApplyDataLabels Type:=xlDataLabelsShowLabelAndPercent, LegendKey:=False, HasLeaderLines:=True
End With

End Sub
-------------------------------------------------------------
この手法でグラフ作成した場合について、

1.
グラフ作成時に以下と同じように NumberFormatLocal を設定する方法はありますか?

(通常の記述例)
ActiveChart.SeriesCollection(1).DataLabels.Select
Selection.NumberFormatLocal = "0.0%"

といいますのは、現在作成しているマクロはユーザーの操作によっては
円グラフと棒グラフが順不同に作成される場合があり、
SeriesCollection の INDEX番号 が分からない場合があるためです。

または、グラフの名前等を指定することなどにより、
SeriesCollection の INDEX番号 を取得する事が可能でしたら
その方法を教えて頂きたいのですが・・・。

2.
同じく、グラフ作成時にデータラベルのフォントを設定する方法はありますか?

(通常の記述例)
With Selection.Font
.Name = "MS Pゴシック"
.Size = 10
End With

3.
同じく、横棒グラフ作成時に、以下と同じ事はできますか?

'反転
ActiveChart.Axes(xlCategory).Crosses = xlMaximum
ActiveChart.Axes(xlCategory).ReversePlotOrder = True

'横軸100%
ActiveChart.Axes(xlValue).MaximumScale = 1

以上、何卒ご教授のほど、よろしくお願い致します。

投稿日時 - 2007-08-16 13:56:19

QNo.3259420

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

こんにちは。

With~End With の間に
.SeriesCollection(1).DataLabels.NumberFormatLocal = "0.0%"
.SeriesCollection(1).DataLabels.Font.Name = "MS Pゴシック"
.SeriesCollection(1).DataLabels.Font.Size = 10
のような感じで追加すれば良いかと思います。
また、他のプロパティも同様に、

.Axes(xlCategory).Crosses = xlMaximum
.Axes(xlCategory).ReversePlotOrder = True
.Axes(xlValue).MaximumScale = 1

をWith~End With間に追加すれば、出来るかと思います。

投稿日時 - 2007-08-16 23:17:24

お礼

ForestRainさん

たびたびご回答ありがとうございます。
とても助かります。

やはり、SeriesCollectionのINDEX番号を
取得するのは難しそうでしょうか?

それから、横棒グラフで同じようにフォントを指定する場合は
また違う方法をとらなければならないのでしょうか?

重ねて質問してしまって申し訳ありません。

どうも、この手のプロパティ等の指定の仕方が
イマイチつかめないため、苦戦しております。
どこかうまく調べられるサイトはないものでしょうか・・・

投稿日時 - 2007-08-17 13:57:05

あなたにオススメの質問