「マクロ 折れ線グラフ 表示形式 日付」
という検索キーワードで、このサイト『インストラクターのネタ帳』へアクセスがありました。
グラフの日付軸で表示形式を設定するには、Excel VBAでどういったコードを書けばいいのか、探していらしたのでしょう。
日付軸の表示形式を設定するサンプルマクロ
日付軸を持った折れ線グラフや棒グラフが、埋め込みグラフとして存在するワークシートが存在するときに以下のSubプロシージャを実行すると、日付軸の表示形式が「m月」に設定されます。ActiveSheet.ChartObjects(1).Chart.Axes(xlCategory) _
.TickLabels.NumberFormatLocal = "m月"
End Sub
実際には1行で書けるコードですけれど、オブジェクトの階層が深く、コードとしては横に長くなりすぎ読み辛いため「 _」で物理的に改行しています。
TickLabels.NumberFormatLocalで軸の表示形式を設定できる
AxisオブジェクトのTickLabelsプロパティで、軸の目盛ラベルを表すTickLabelsを取得できます。
そのTickLabelsオブジェクトのNumberFormatLocalプロパティを使えば、軸ラベルの表示形式を取得・設定できます。
TickLabelsオブジェクトはコレクションではない
ちなみに「TickLabels」と複数形になっているために、TickLabelsをコレクションオブジェクトと考える方がいるかもしれませんけれど、それは違います。
拙著『いちばんやさしいExcel VBAの教本』のLesson 53「コレクションオブジェクトについて学習しましょう」で触れているとおり、コレクションオブジェクトには含まれる単独のオブジェクトの数を取得するCountプロパティや、
単独のオブジェクトを取得するための「Item」という名前のプロパティ(またはメソッド)が用意されています。
これに対しTickLabelsオブジェクトには、Countプロパティや、Itemという名前のプロパティやメソッドも存在しませんから、
コレクションオブジェクトではなく、単なるオブジェクトです。
Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » 日付軸の表示形式-TickLabels.NumberFormatLocal