「vba word 図形色変更」
といった検索キーワードでアクセスがありました。
Word VBAで図形の色を変更するには、どのようなコードを書けばいいのかを探していらしたのでしょうか。
図形の塗りつぶし色を変更するサンプル
文書内の1つ目の図形が四角形や楕円などのときに以下のSubプロシージャを実行すると、塗りつぶし色が黄色になります。
ActiveDocument.Shapes(1).Fill.ForeColor.RGB = RGB(255, 255, 0)
End Sub
ShapeオブジェクトのFillプロパティで塗りつぶし書式を表すFillFormatオブジェクトを取得し、
ActiveDocument.Shapes(1).Fill.ForeColor.RGB
FillFormatオブジェクトのForeColorプロパティで前景色を表すColorFormatオブジェクトを取得し、
ActiveDocument.Shapes(1).Fill.ForeColor.RGB
ColorFormatオブジェクトのRGBプロパティを使って色を設定しています。
ActiveDocument.Shapes(1).Fill.ForeColor.RGB = RGB(255, 255, 0)
図形の枠線色を変更するサンプル
以下のSubプロシージャを実行すると、枠線色が赤色になります。
ActiveDocument.Shapes(1).Line.ForeColor.RGB = RGB(255, 0, 0)
End Sub
ShapeオブジェクトのLineプロパティで枠線書式を表すLineFormatオブジェクトを取得し、
ActiveDocument.Shapes(1).Line.ForeColor.RGB
LineFormatオブジェクトのForeColorプロパティで前景色を表すColorFormatオブジェクトを取得し、
ActiveDocument.Shapes(1).Line.ForeColor.RGB
ColorFormatオブジェクトのRGBプロパティを使って色を設定しています。
ActiveDocument.Shapes(1).Line.ForeColor.RGB = RGB(255, 0, 0)
Shapeを取得したあとのコードは似ている
拙著『いちばんやさしいPowerPoint VBAの教本』の、Lesson 43(p.216~219)で、PowerPoint VBAの場合の図形書式設定を解説しています。
図形の書式設定の基本は枠線と塗りつぶしであること、枠線書式はShape.Lineプロパティで取得できるLineFormatオブジェクトを使うこと、塗りつぶし書式はShape.Fillプロパティで取得できるFillFormatオブジェウトを使うこと等を、拙著では解説しています。
この基本は、Word VBAでも同じです。Excel VBAでも同じです。
Shapeオブジェクトを取得するまでは、Word VBA・Excel VBA・PowerPoint VBAでコードは異なりますが、Shapeオブジェクトを取得したあとのコードはかなり似ています。
最終更新日時:2021-10-26 15:51
Home » ワードマクロ・Word VBAの使い方 » Shape・図形 » Word VBAで図形の色を変更するには