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

執筆者:

関連記事

LimeSurveyをV1.92から2.0にバージョンアップした

LimeSurveyをV1.92から2.0にバージョンアップした。 なんで、V2.0にしたかというと、新機能のタイマー設定が使いたかったから。 Qの画面に入ったとたん、指定した秒数でカウントダウンが始 …

no image

Amazonツール注文情報取得シートでListOrderで想定しない値エラー

会社では商品をAmazonでセラーとして販売している。 宅急便の伝票を作るときに注文情報(ListOrders)をExcelでCSVで出力できないかなあと、何かのツールを探していて、以下にたどり着いた …

no image

「〇〇屋商店」のラベルを付けたGmailメッセージからGASで件名と本文の一部を正規表現で取り出してスプレッドシートに格納

仕事でGoogle App Script(GAS)を使うケースが出てきそうなので、休日なれど、自主勉してみた。 やりたいことは、オンラインショップの注文メールの中から、必要な事項を取り出して、スプレッ …

no image

改行文字の置換 まとめ

○強制改行をExcelで置換 検索側:[Ctrl]キー+[J]キー(何も表示されない) 置換側:任意 ○改行をWordで置換 検索側:^13(「ワイルドカードを使用する」にチェックをつけておく) 置換 …

ShopifyからChatworkへ通知(JSON)

Arigato Automtion(Shopify)から、PowerAutomateへの、JSONデータの渡し方について、需要あるかもと思い、書いてみる。 自分がやっていた以前のやり方(これだと日本語 …