おすすめパワポ本12選!プロから学ぶ資料作成術

【パワポVBA】全画像を指定サイズと指定位置に変更するマクロ

PowerPoint VBAを使い、全ての画像を指定サイズと指定位置に変更するマクロをご紹介します。

各スライドの同じ位置に同じサイズの画像を貼り付けたいときに有効です。

コードは神AI「ChatGPT」で開発しました。ChatGPTについては、次の記事で解説しています。

神AI「ChatGPT」でパワポVBAを開発【始め方から解説】
ChatGPTとは、質問を投げると人工知能が回答してくれるチャットサービスです。Excelでの数式や…
スポンサーリンク
スポンサーリンク

全画像を指定サイズと指定位置に変更するマクロ

Sub ResizeAndMoveAllImages()

    '変数の定義
    Dim shp As shape
    Dim sld As Slide

    '全スライドを処理する
    For Each sld In ActivePresentation.Slides
        'スライドに存在する全画像を処理する
        For Each shp In sld.Shapes
            '画像の場合のみ処理する
            If shp.Type = msoPicture Then
        
                '縦横比を固定するのチェックをはずす
                shp.LockAspectRatio = msoFalse
                '画像のサイズを変更する
                shp.Width = 72 / 2.54 * 10 '横幅を10cmにする
                shp.Height = 72 / 2.54 * 10 '縦幅を10cmにする
                '画像を指定座標に移動する
                shp.Left = 72 / 2.54 * 2 'X座標を2cmにする
                shp.Top = 72 / 2.54 * 2 'Y座標を2cmにする
            End If
        Next shp
    Next sld

End Sub

全スライドの全画像が横幅10cm、縦幅10cmにリサイズされ、X座標2cm、座標2cmに移動されます。それぞれの値は、適宜変更してください。

マクロの使い方は、次の記事で解説しています。

PowerPointマクロ入門 | コピペで始める楽々コース
PowerPointでマクロを始めたいけど、難しそうでよく分からないという方向けの入門編です。PPD…

実行結果

各スライドに画像を挿入したデータを用意します。

マクロを実行すると全スライドの全画像が指定したサイズと位置に変更されます。

画像の縦横比が変わってしまった場合は1つずつリセットする必要があります。

縦横比をリセットする方法は、次の記事で解説しています。

PowerPointで写真に変倍をかけず正方形にトリミングする方法
PowerPointで写真に変倍をかけずに縦横比を「1:1」の正方形にトリミングする方法をご紹介しま…

縦横比をリセットして完了です。

画像を一枚ずつ各スライドに一括挿入する

そもそも画像を一枚ずつ各スライドに貼り付けるのが手間だなって思われてるのではないでしょうか?

でも安心してください!パワポの「フォトアルバム」機能を使えば簡単に画像を一括挿入できます。

詳細は、次の記事で解説しています。

PowerPointで複数の画像をスライドに一括で挿入する3つの方法
PowerPointで複数の写真をスライドに一括で挿入したい時ありませんか?1枚ずつ挿入もできますが…

画像を一括挿入するマクロはないの?

あるよ!

【パワポVBA】指定フォルダの画像を各スライドに一括挿入するマクロ
PowerPoint VBAを使い、指定フォルダの全画像を各スライドに一括挿入するマクロをご紹介…