「vba textframe フォント変更」
といった検索キーワードでアクセスがありました。
どのアプリケーションかはわかりませんが、図形内・Shape内に存在する文字列のフォントを変更するには、どのようなコードを書けばいいのかを探していらしたのでしょう。
Shape内文字列のフォントを変更するサンプルマクロ
文字列の入力したShapeを1つアクティブなシートに挿入して、以下のExcelマクロを実行してください。
Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
shp.TextFrame.Characters.Font.Name = "BIZ UDP明朝 Medium"
End Sub
図形内文字列のフォントが、「BIZ UDP明朝 Medium」に変更されます。
TextFrameにFontプロパティはない
「vba textframe フォント変更」
と検索なさった方は、TextFrameオブジェクトにフォントを操作するためのプロパティ等が用意されていると考えていらしたようにも思えますが、違います。
Excel VBAのTextFrameオブジェクトは、拙著『理解するExcel VBA/図形操作の基本』の「chapter 4. Shape内の文字列を操作する」でも解説しているとおり、Shapeに文字列を入れる枠を表すオブジェクトです。TextFrameオブジェクトには、Fontオブジェクトを取得するためのFontプロパティは用意されていません。
フォントの操作は、TextFrameの子オブジェクトであるCharactersオブジェクトのFontプロパティで取得した
FontオブジェクトのNameプロパティで指定します。
最終更新日時:2022-06-01 05:52
- Newer:VBAでShapeがグラフかを判定するには-HasChartプロパティ
- Older:VBAで系列名をセル参照に
Home » エクセルマクロ・Excel VBAの使い方 » 図形内文字列 » TextFrameのフォントを変更するには??