概要
Excelでデータを可視化する際に、複数のグラフを使って時間変化を表現している方も多いのではないでしょうか。
しかし、X軸が「時間軸」の場合、期間の変更や区切りの調整が必要になるたびに、すべてのグラフを手動で設定し直すのは非常に手間です。
今回は、Excel VBAを使ってシート内のすべてのグラフのX軸(最小値・最大値・区切り幅)を一括で変更する方法をご紹介します。
実現したい仕様
以下のような構成で、指定した数値に基づいてX軸を自動変更する仕様です。
- セル
A1に「X軸の最小値」 - セル
A2に「X軸の最大値」 - セル
A3に「区切り幅(メジャーユニット)」 - 図形で作成した「実行ボタン」を押すと、現在のシート内すべてのグラフのX軸が一括で変更される
実装コード(VBA)
以下のコードを標準モジュールに貼り付けて、図形にマクロ登録してください。
Sub UpdateAxisMajorUnit()
Dim chrt As ChartObject
Dim minValue As Double
Dim maxValue As Double
Dim majorUnit As Double
With ActiveSheet
' A1〜A3の値を読み取り
minValue = .Range("A1").Value
maxValue = .Range("A2").Value
majorUnit = .Range("A3").Value
' シート内すべてのグラフのX軸を更新
For Each chrt In .ChartObjects
With chrt.Chart.Axes(xlCategory, xlPrimary)
.MinimumScale = minValue
.MaximumScale = maxValue
.MajorUnit = majorUnit
End With
Next chrt
End With
MsgBox "完了しました", vbInformation
End Sub
使用方法
- セル
A1に X軸の開始値(例:0) - セル
A2に X軸の終了値(例:100) - セル
A3に X軸の区切り(例:10) - 実行ボタンをクリック
これだけで、すべてのグラフのX軸が一括で更新されます。
応用のヒント
- X軸だけでなく、Y軸(縦軸)も同様の構文で一括変更可能です
- 時系列データの期間を切り替えながらグラフ表示を切り替えたい場面に便利です
- マクロボタンに別の設定パターンを割り当てておけば、複数の期間比較も即時切替できます
まとめ
- Excelで複数のグラフのX軸を手動で調整するのは非効率
- VBAを使えば、セル入力 + ボタン1つでX軸の設定を一括反映可能
- 時間軸を使ったグラフや、ダッシュボードの自動化に最適
Excelで可視化業務を効率化したい方にとって、この方法は非常に有用です。
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
