「ワード マクロ 図行内に一括で入れる」
「図を行内に word vba」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
Wordで画像などを扱う場合、行内オブジェクトと浮動オブジェクトについて理解しておくことは必須です。
「ワード マクロ 図行内に一括で入れる」
「図を行内に word vba」
という検索は、浮動オブジェクトである図・画像を、一気に行内オブジェクトに変換するマクロ・VBA(Visual Basic for Applications)のコードを探していた方によるものでしょう。
アクティブ文書の図を行内オブジェクトに変換するサンプルマクロ
以下のようなマクロで、アクティブな文書内の図・画像を行内オブジェクトに変換できます。
Dim shp As Shape
For Each shp In ActiveDocument.Shapes
If shp.Type = msoPicture Then
shp.ConvertToInlineShape
End If
Next shp
アクティブ文書の全Shapeにループを回して、
For Each shp In ActiveDocument.Shapes
もしもShapeが画像だったときに、
If shp.Type = msoPicture Then
Shape.ConvertToInlineShapeメソッドで行内オブジェクト・InlineShapeに変換しています。
shp.ConvertToInlineShape
アクティブページの図を行内オブジェクトに変換するサンプルマクロ
以下のようなマクロで、アクティブなページの図・画像を行内オブジェクトに変換できます。
Dim shp As Shape
For Each shp In _
ActiveDocument.Bookmarks("\Page").Range.ShapeRange
If shp.Type = msoPicture Then
shp.ConvertToInlineShape
End If
Next shp
考え方は、先のアクティブ文書の図を行内にするマクロと同じですが、ループを回す対象が、
For Each shp In _
ActiveDocument.Bookmarks("\Page").Range.ShapeRange
と、アクティブなページ内のShapeにしているところが違っています。
- Newer:シート名を検索するExcelマクロ
- Older:新規スライドを挿入するショートカットキー-Ctrl+M
Home » ワードマクロ・Word VBAの使い方 » Shape・図形 » 図・画像を行内オブジェクトに変換するWordマクロ