IT仕事

ExcelVBAでグラフのサイズやフォント種類を変更

投稿日:2015年6月25日 更新日:

秀吉というアンケートソフトで作ったExcelのグラフを、マクロを使って色々変えようと。
たくさんあるのでExcel2013のVBAで、グラフサイズとともにフォントサイズとフォント種類を変更しようとしたのだが、なかなかうまくいかない。
マクロの自動記録で作ったコードでは、再実行したときにエラーメッセージが出て、使い物にならないかったり。なぜ?
2時間ほどかかって、やっとできたのが、以下。

Public Sub 秀吉で作ったグラフのサイズを統一()
    Dim TempChartObject As Variant
    Dim cht As Chart
    Dim ws As Worksheet
     
    For Each ws In ActiveWorkbook.Worksheets
        For Each TempChartObject In ws.ChartObjects
            With TempChartObject
                .Height = 200
                .Width = 500
                Set cht = .Chart 'ここがポイント
            End With
            With cht.ChartArea.Format.TextFrame2.TextRange.Font
                .Size = 10
                .NameFarEast = "+mj-ea" 'MS Pゴシック 見出し
                .Name = "+mj-ea"
            End With
        Next
    Next
End Sub

見ればわかるけど、上記に加え、アクティブブックの全シートに対して同様の処理をする処理をしています。

ああ今日も疲れた(未だ昼だけど)。

-IT仕事

執筆者:

関連記事

no image

不動産プラグインの「トップ物件表示」ウィジェットが9件目から段ズレする。

解決できなくて、数時間、悩んだ~。 結局わかったのは、 ・ウィジェットのブロックの高さ調整にJQueryを使っている。CSSで決め打ちではない。 ・PHPのコードで、物件4件ごとに高さを決めている。 …

no image

Limesurvey 表示される日本語をちょっと変更した

ひっさびさにlimesurveyを触ることになったけど、だいぶ忘れている・・・。 ボタンに表示されている日本語を変えるだけなのに、あのファイルこのファイルひっくり返し、最後にLC_MESSAGESフォ …

no image

DreamWeaverでXamppでMySqlでトラブルで

DreamWeaverCS6とXampp+MySqlを接続しようとしたのだがうまくいかず4時間ほど格闘。 一番はまったのが、右上のスクリーンショット「サイト設定」の、「使用する接続」が「ローカル/ネッ …

no image

秀丸マクロで文字の折り返しを最大

今まで秀丸マクロでできないと思っていた、文字の折り返しを最大にする操作と、その後カーソルを移動させる操作が、実はできることがわかった。 自分のケースだと、 config “xAutoAdj …

no image

TeamViewer「指定のネットワークアドレスではパートナーに接触できません」

TeamViewerの、リモートする側・される側のバージョンが違うと、リモートコンピュータのパートナーIDを入れて相手に接続しようとした場合に、 「指定のネットワークアドレスではパートナーに接触できま …