[[20240802092917]] 『グラフのフォント変更マクロでBIZ UDゴシックが出』(めだ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『グラフのフォント変更マクロでBIZ UDゴシックが出来ない』(めだ)

以下のマクロでグラフエリアのすべてのフォントを「BIZ UDゴシック」に変更したいのですが、できません。なぜか別のフォントになってしまいます。BIZ UDゴシックはマクロで指定できないのでしょうか?
理由をお分かりの方がいらっしゃれば教えてください!

Sub ChangeFontInChartArea()

    Dim cht As Chart
    Dim ser As Series

    ' グラフが選択されているかどうかを確認
    If TypeName(Selection) = "ChartObject" Or TypeName(Selection) = "ChartArea" Then
        If TypeName(Selection) = "ChartObject" Then
            Set cht = Selection.Chart
        Else
            Set cht = Selection.Parent
        End If

        ' グラフタイトルのフォントを変更
        On Error Resume Next
        If cht.HasTitle Then
            cht.ChartTitle.Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        End If
        On Error GoTo 0

        ' 軸タイトルのフォントを変更
        On Error Resume Next
        If cht.Axes(xlCategory, xlPrimary).HasTitle Then
            cht.Axes(xlCategory, xlPrimary).AxisTitle.Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        End If
        If cht.Axes(xlValue, xlPrimary).HasTitle Then
            cht.Axes(xlValue, xlPrimary).AxisTitle.Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        End If
        On Error GoTo 0

        ' 軸ラベルのフォントを変更
        On Error Resume Next
        cht.Axes(xlCategory, xlPrimary).Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        cht.Axes(xlValue, xlPrimary).Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        On Error GoTo 0

        ' 凡例のフォントを変更
        On Error Resume Next
        cht.Legend.Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
        On Error GoTo 0

        ' データラベルのフォントを変更
        For Each ser In cht.SeriesCollection
            On Error Resume Next
            With ser.DataLabels.Format.TextFrame2.TextRange.Font
                .Name = "BIZ UDゴシック"
            End With
            On Error GoTo 0
        Next ser

        MsgBox "グラフ内のすべてのテキストのフォントが 'BIZ UDPゴシック' に変更されました。"
    Else
        MsgBox "グラフを選択してください。"
    End If
End Sub

< 使用 Excel:Microsoft365、使用 OS:Windows11 >


 グラフタイトルの部分だけですが....
 NameFarEastプロパティも設定すれば、どうでしょうか?
 マクロ記録で設定が必要なプロパティは取得できるので、他もトライしてみてください。

        ' グラフタイトルのフォントを変更
        On Error Resume Next
        If cht.HasTitle Then
'            cht.ChartTitle.Format.TextFrame2.TextRange.Font.Name = "BIZ UDゴシック"
            With cht.ChartTitle.Format.TextFrame2.TextRange.Font
'                .NameComplexScript = "BIZ UDゴシック"
                .NameFarEast = "BIZ UDゴシック"
                .Name = "BIZ UDゴシック"
            End With
        End If
(まる2021) 2024/08/02(金) 10:36:46

節操がない
https://www.239-programing.com/cgi-bin/excelvba_bbs.cgi?id=1983

(パトロール中) 2024/08/02(金) 10:43:34


まる2021さん

NameFarEastでグラフタイトルの変更が出来ました。
ありがとうございます!!
(めだ) 2024/08/02(金) 11:39:05


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.