動作検証バージョン:Windows 11 Home + 64bit Excel バージョン 2403(ビルド17425.20000クイック実行)ベータチャネル
「エクセル VBA shape テキストボックスの取り消し線」
という検索キーワードでアクセスがありました。
Excel VBAで、テキストボックス内の文字列に取り消し線を引くにはどうすればいいのかを調べていらしたのでしょう。
Shape内文字列に取り消し線を引くサンプルマクロ
アクティブなワークシートにテキストボックスを1つ作成し、文字列を入力してから以下のExcelマクロを実行してください。
Sub Shape内の文字列に取り消し線を引く()
Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
shp.TextFrame.Characters.Font.Strikethrough = True
End Sub
Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
shp.TextFrame.Characters.Font.Strikethrough = True
End Sub
サンプルマクロで行っている処理
拙著『理解するExcel VBA/図形操作の基本』の、[4-3. Charactersは文字列を表すオブジェクト]で、以下のようなオブジェクトモデルを解説しています。
Worksheetオブジェクト
└ Shapeオブジェクト
└ TextFrameオブジェクト
└ Charactersオブジェクト
└ Fontオブジェクト
上記のマクロではこのオブジェクトモデルを辿ってFontオブジェクトを取得して、Font.Strikethroughプロパティに論理値Trueを指定することで、
取り消し線を引いています。
最終更新日時:2024-03-26 14:48
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » 図形内文字列 » Excel VBAでShape内文字列に取り消し線を引く-Font.Strikethroughプロパティ