Word VBAで画像の文字列の折り返しを自在に操る方法
2025.03.15
皆さん、Wordで画像を挿入した際に、思ったようにテキストと画像の配置ができずに困ったことはありませんか?特に、画像の周りにテキストを綺麗に配置する「文字列の折り返し」は、文書の見栄えを大きく左右します。今回は、そんな「文字列の折り返し」をVBA(Visual Basic for Applications)を使って自在にコントロールする方法をご紹介します。初心者の方でも安心して取り組める内容となっていますので、ぜひ最後までご覧ください。
文字列の折り返しとは?
Wordのイメージ
まず、「文字列の折り返し」について簡単におさらいしましょう。これは、画像や図形を文書内に配置した際、その周りにテキストをどのように配置するかを指定する機能です。具体的には、以下のような種類があります。
ここがポイント!
行内 画像をテキストと同じ行内に配置し、文字列は画像の前後に配置されます。
四角形 画像の周囲を四角形として扱い、その周りに文字列が配置されます。
外周 画像の輪郭に沿って文字列が配置されます。
上下 画像の上部と下部にのみ文字列が配置され、左右には配置されません。
前面 画像が文字列の前面に配置され、文字列は画像の背後に隠れます。
背面 画像が文字列の背面に配置され、文字列が画像の上に表示されます。
これらの設定を適切に使い分けることで、文書全体のレイアウトを美しく整えることができます。
VBAで画像の文字列の折り返しを設定する方法
では、実際にVBAを使って画像の文字列の折り返しを設定する方法を見ていきましょう。以下の手順で進めていきます。
Wordを開き、Alt キーを押しながらF11 キーを押して、VBAエディターを起動します。
メニューから挿入 を選び、標準モジュール をクリックして新しいモジュールを作成します。
以下のコードを入力します。
vba
Sub SetPictureWrapType()
Dim shp As InlineShape
For Each shp In ActiveDocument.InlineShapes
If shp.Type = wdInlineShapePicture Then
shp.ConvertToShape.WrapFormat.Type = wdWrapSquare
End If
Next shp
End Sub
このコードは、文書内のすべてのインライン画像を対象に、文字列の折り返しを「四角形」に設定するものです。
コードを入力したら、F5 キーを押してマクロを実行します。
Wordの文書に戻り、画像の文字列の折り返しが変更されていることを確認します。
具体例画像を背面に配置する
例えば、画像を文字列の背面に配置したい場合、以下のようにコードを変更します。
vba
Sub SetPictureBehindText()
Dim shp As InlineShape
For Each shp In ActiveDocument.InlineShapes
If shp.Type = wdInlineShapePicture Then
shp.ConvertToShape.WrapFormat.Type = wdWrapBehind
End If
Next shp
End Sub
このコードを実行すると、すべてのインライン画像が文字列の背面に配置されます。これにより、テキストの上に画像が透けて見えるようなレイアウトを作成できます。
よくある質問や疑問
Q1. VBAを使わずに画像の文字列の折り返しを設定する方法はありますか?
はい、Wordの標準機能を使って設定することが可能です。画像を選択し、上部の図の形式 タブをクリックします。次に、文字列の折り返し ボタンをクリックし、希望の折り返しオプションを選択してください。これにより、手動で画像の文字列の折り返しを設定できます。
Q2. 画像を自由に移動できないのですが、どうすればいいですか?
画像が自由に移動できない場合、文字列の折り返しが行内 に設定されている可能性があります。この場合、画像はテキストと同じ行内に固定され、自由に移動することができません。文字列の折り返し を四角形 や前面 などに変更することで、画像を自由に移動させることができます。
今すぐ解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!) を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失 や重大なシステム障害 につながることも。解決できずに大切な機会を逃す リスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
相談しに行く
ぜひ、あなたの悩みを私に解決させてください。
まとめ
いかがでしたでしょうか。今回は、Word VBAを使って画像の文字列の折り返しを設定する方法をご紹介しました。VBAを活用することで、複数の画像に一括で同じ設定を適用したり、細かいレイアウト調整を効率的に行うことができます。ぜひ、今回の内容を参考に、Word文書のレイアウトをより美しく、使いやすくしてみてください。
他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。
コメント