Wordで作成した文書に画像や図を挿入したけれど、そのサイズを変更する方法がわからないという方も多いはず。特にVBA(Visual Basic for Applications)を使って自動化したい場合、初心者には少し難しく感じるかもしれません。しかし、安心してください。この記事では、Word VBAで図のサイズ変更を行う方法を、誰でも理解できるようにわかりやすく解説します。YouTube動画にも使える内容なので、視覚的にわかりやすくお伝えしていきます!
VBAで図のサイズを変更する基本
VBAを使ってWord文書の図をサイズ変更する方法は、実は思ったより簡単です。まず最初に、VBAとは何かを簡単におさらいしましょう。VBAは、Microsoft Office製品(WordやExcelなど)の自動化を行うためのプログラミング言語です。
では、Word VBAを使って図のサイズを変更する基本的な方法をご紹介します。
1. VBAを開く方法
まず、Wordを開いてVBAエディタを開きます。VBAエディタを開くには、以下の手順を踏んでください。
- Wordを開き、「開発」タブを表示します。(表示されていない場合は、オプションから「開発」タブを有効にします)
- 「開発」タブの中から「Visual Basic」をクリックします。
- VBAエディタが開きますので、左側の「挿入」から「モジュール」を選んで新しいモジュールを作成します。
2. VBAコードの記述方法
VBAエディタで新しいモジュールを作成したら、図のサイズを変更するコードを入力します。以下のコードを参考にしてください。
Sub ResizeImage() Dim img As Shape Set img = ActiveDocument.Shapes(1) '1番目の図を選択 img.LockAspectRatio = msoFalse '縦横比を固定しない img.Width = 200 '幅を200ポイントに設定 img.Height = 150 '高さを150ポイントに設定 End Sub
このコードでは、文書内の1番目の図を選択し、幅を200ポイント、高さを150ポイントに設定しています。もし複数の図がある場合は、Shapes(1)を他の番号に変更して、指定する図を変えることができます。
図のサイズ変更を自動化する方法
VBAを使う最大の利点は、図のサイズ変更を自動化できることです。例えば、複数の図を一括で同じサイズに変更したい場合には、ループ処理を使うと便利です。
1. 複数の図を一括変更するコード
複数の図を一括で変更する場合、次のようなコードを使います。
Sub ResizeAllImages() Dim img As Shape For Each img In ActiveDocument.Shapes img.LockAspectRatio = msoFalse img.Width = 200 '幅を200ポイントに設定 img.Height = 150 '高さを150ポイントに設定 Next img End Sub
このコードは、文書内のすべての図に対してサイズ変更を行います。指定した幅と高さに自動でサイズが変更されます。
2. 図の種類を指定してサイズ変更する
また、すべての図ではなく、特定の図だけサイズを変更したい場合は、次のように条件を付け加えることができます。
Sub ResizeSpecificImages() Dim img As Shape For Each img In ActiveDocument.Shapes If img.Type = msoPicture Then '画像タイプのみ選択 img.LockAspectRatio = msoFalse img.Width = 200 '幅を200ポイントに設定 img.Height = 150 '高さを150ポイントに設定 End If Next img End Sub
このコードでは、画像(msoPicture)タイプの図だけを対象にサイズ変更を行っています。
よくある質問や疑問
Q1: VBAコードを使っても図がうまく変更されません。どうすればよいですか?
図の種類や番号が間違っている可能性があります。まずは、Shapesの番号や種類(例えばmsoPicture)が正しいか確認してください。また、図が「ロック」されている場合、ロックを解除してからサイズ変更を試みてください。
Q2: サイズ変更だけでなく、図の位置も調整したい場合はどうすればいいですか?
位置の調整もVBAで行えます。例えば、img.Leftで横位置を、img.Topで縦位置を変更できます。以下のコードを追加すると、図を左上に配置できます。
img.Left = 100 '横位置を100ポイントに設定 img.Top = 50 '縦位置を50ポイントに設定
今すぐ解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失や重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
ぜひ、あなたの悩みを私に解決させてください。
まとめ
いかがでしたでしょうか?Word VBAで図のサイズ変更を行う方法は、少しのコードで簡単に自動化できます。特に、複数の図を一括で変更したい場合や、図の位置も調整したい場合にはVBAが非常に便利です。
この動画(記事)が役に立ったら、ぜひコメントや高評価をお願いします!他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。
コメント