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仕事

執筆者:

関連記事

秀丸で、例えば「123市」を「123都市」にするときの正規表現の使い方メモ

検索文字のうち、置き換え後に残したい部分を、カッコで囲むのがミソ。 検索文字:([0-9])市 置換文字:\1都市 wordだと「ワイルドカードを使用する」とすると、正規表現が使える。

no image

Responsiveが超高速で作れるArtisteer最高

Webの高速制作ツールのArtisteerがResponsiveに対応しているのは知っていた。 けども、Wordpressでウィジェットとして追加したブロックの一つ一つについて、モバイルで表示したくな …

no image

Googleマーチャントの送料設定に苦労

商品をGoogleマーチャントに登録しているのだが、いつしかエラー(警告)が出ていた。 エラー内容は、「送料の副属性が少なすぎます」。 ヘルプを見ながら、 表見出し:送料(国:地域:サービス:価格) …

no image

ITC

昨晩は飲み会だった。 さるNPOの総会後の懇親会。 酔っ払っていたので帰ってからすぐに布団に入って寝入ってしまったのだが、さっき、腕を蚊に喰われてかゆみで目が醒めてしまい、こうして日記を書いている。 …

no image

遅し

ExcelのVBAのプログラミング。 xlAPP.EnableEvents = Falseで、Changeイベント無効にできる。 ということを、今日初めて知った。 ああ、もう数年早く知っていれば、あれ …