Home » パワーポイントマクロ・PowerPoint VBAの使い方 » TextFrame・TextRange » PowerPointのAddTextboxでフォントサイズを変更したい

PowerPointのAddTextboxでフォントサイズを変更したい

動作検証バージョン:64bit Windows 10 Pro + 32bit PowerPoint(バージョン2108 ビルド14326.20348 Microsoft Store)

「vba addtextbox 文字サイズ パワーポイント」
といった検索キーワードで時折アクセスがあります。

PowerPoint VBAのShapes.AddTextboxメソッドでテキストボックスを挿入して、

そのテキストボックスの文字サイズ・フォントサイズを変更するにはどうすればいいのかを探していらしたのでしょう。

Shapes.AddTextboxでフォントサイズは指定できない

拙著『いちばんやさしいPowerPoint VBAの教本』の、「Lesson 39 Shapesが持つAdd〇〇メソッドでShapeを挿入できます」でもご紹介しているとおり、ShapesコレクションのAddTextboxメソッドの引数には、文字列の方向(Orientation)と位置(Left, Top)と大きさ(Width, Height)しか指定できません。

テキストボックスのフォントサイズを変更したい場合は、Shapes.AddTextboxメソッドで返されるShapeオブジェクトから階層を辿ってフォントを表すFontオブジェクトを取得する必要があります。

AddTextboxしてフォントサイズを変更するサンプル

1枚目のスライドをアクティブな状態にして、以下のSubプロシージャをステップ実行してみてください。

Sub AddTextboxして文字サイズを変更する()
 Dim sld As Slide
 Set sld = ActivePresentation.Slides(1)

 Dim shp As Shape
 Set shp = sld.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 0, 300, 100)
 shp.Fill.ForeColor.RGB = RGB(0, 255, 255)

 shp.TextFrame.TextRange.Text = "サンプル文字列"
 shp.TextFrame.TextRange.Font.Size = 36
End Sub

先頭スライドの左上にテキストボックスが挿入されてから、そのテキストボックスが水色で塗りつぶされ、「サンプル文字列」と入力後に、36ポイントに設定されます。

サンプルで行っている処理について

行っている処理のほとんどは、ご紹介済みのAddTextboxでテキストボックスのサイズを設定するSubプロシージャと同じです。

違うのは最後の行

 shp.TextFrame.TextRange.Font.Size = 36

です。ここでフォントサイズを変更しています。

フォントサイズを変更するために、拙著の「Chapter 6 文字列の操作を学ぼう」までで解説している以下のような階層を辿っています。

Presentation
└ Slide
  └ Shape
    └ TextFrame
      └ TextRange
        └ Font

最終更新日時:2021-10-05 16:20

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » TextFrame・TextRange » PowerPointのAddTextboxでフォントサイズを変更したい

「TextFrame・TextRange」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.