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

来週やるExcelVBAセミナーの準備をしていて、

同じ「飛び物」でもロケットが好きな人とラジコンが好きな人がいるよな、とふと思った。 ロケットの好きな人は、 準備をきちんと整えて、万全を期して発射スイッチを押す・・・飛んだ!あんなに高く。感動! 飛ん …

クリップボードの画像をファイル保存せずそのまま投稿画面に貼り付けられるとは・・・素晴らしい OnePress Image Elevator

上記の画面は、FireFoxのScreenShoterプラグインで、画面から直接クリップボードに画像を撮って、WPの投稿画面にペーストしただけのもの。 WordPress › OnePress Ima …

JQueryでカレンダー入力機能

以下を参考に、ZeroMailというメールフォームスクリプトにカレンダー入力機能を追加。 Datepicker | jQuery UI 1.10 日本語リファレンス | js STUDIO 他のサイト …

no image

IP電話

呉西のケーブルテレビ会社にIP電話を申し込んだら、 「トラブルが多いから内規で設置申し込みを受け付けないようにしている。公表してないが」 と、そこの営業さん。 ここ、市が運営してるところじゃなかったっ …

no image

ExcelVBAで名前から行列指定で取り出すには

名前を定義したセル範囲の、列や行での相対位置でみた、何番セルの値を取り出したい場合に、どのように書ければよいかわからなかったけども、やっとわかった。 Range(“範囲1”). …