(Excel for Mac 2011 で動作確認しています。)
自分の持ってるExcelが色々とポンコツすぎてめげそうです。前回の記事でも影が消せないとわめき散らしたのですが、要するにバージョンが合ってないんだと思います。ExcelVBAで想定しているグラフのプロパティが、うちのExcelには当てはまらない、ということが多いのだと思います。
けど現実問題として、VBAを美しくすることじゃなくて、グラフを美しくすることを優先したいわけです。
というわけで基本のグラフ設定からです。
##1 ファイルの準備
・新しいExcelブックに、お好きな散布図を作ります。散布図にも種類があるかもしれないですが、一番シンプルな無印の散布図がよいと思います。
・「名前を付けて保存」から「マクロ有効ブック」の形式で保存します。
##2 マクロの準備
・Excelの開発タブを表示します。やり方はGoogleに聞くと良いです。
Windowsの場合 Macの場合 古いExcelの場合
・開発タブの「エディター」を押してVisual Basic Editorを開きます。
・「挿入」から「標準モジュール」を選びます。
・現れたエディタに以下のプログラムをコピペします。
Sub SimpleGraph()
' 散布図を作成し、選択した状態で実行してください。
' 動作確認環境:Excel fo Mac 2011 散布図>散布図(オプション無し)
With ActiveChart
.ChartArea.Height = 480
.ChartArea.Width = 600
.PlotArea.Height = 380
.PlotArea.Width = 480
.PlotArea.Top = 50
.PlotArea.Left = 50
.ChartArea.Format.Fill.ForeColor.RGB = RGB(255, 255, 255)
.PlotArea.Format.Fill.ForeColor.RGB = RGB(255, 255, 255)
.Axes(xlCategory).HasMajorGridlines = False
.Axes(xlValue).HasMajorGridlines = False
.Axes(xlCategory).MajorTickMark = xlTickMarkNone
.Axes(xlValue).MajorTickMark = xlTickMarkNone
End With
End Sub
##3 マクロの実行
・シートに戻り、グラフの外枠をクリックして選択状態にします。
・開発タブの「マクロ」を押し、SimpleGraphを選択して、「実行」を押します。
##4 設定を変えたいときは
・開発タブの「エディター」を押してVBAエディタを開き、マクロの中身を確認します。
・数値などを書き換えてください。
・その後、シートに戻り、グラフの外枠をクリックして選択し、開発タブの「マクロ」を押します。SimpleGraphを実行します。
思い通りの見た目になるまで繰り返します。
##5 さらに整えたいときは
随時、以下の機能を実現するマクロを作る予定です。
・軸の名前を表示する
・キャプションを表示する
・軸のスケールを変える
・特殊な軸を設定する
・マーカーの見た目を変える
・近似曲線を追加する
##6 お急ぎの場合
・ひとまず手動で必要なものを追加します。
・その後、個々のアイテムをクリックして選択状態にし、今度は右クリックします。現れたメニューから書式設定を開きます。
・好きな設定を行ないます。
マーカーの色と形は「自動」ではなく自分の好きなものを選び、枠線、影などはすべて「なし」を選ぶと綺麗です。
軸のテキストのフォントを英語フォントに変え、フォントサイズを少し大きくすると綺麗です。
スケールの桁数も選べます。(「0」→「0.00」など)
軸の最大値と最小値は「自動」ではなく自分で設定すると捗るかもしれません。
反転した軸や対数軸も選べます。さらに、軸の交点を左下以外にすることもできます。
##7 今後の展望
早めに続きを書きます