Home » パワーポイントマクロ・PowerPoint VBAの使い方 » 画像 » 画像のアート効果を無しにするPowerPointマクロ

画像のアート効果を無しにするPowerPointマクロ

動作検証バージョン:Windows 11 Home + 64bit PowerPoint バージョン 2411(ビルド18217.20000クイック実行)ベータチャネル

最近のPowerPointでは、[図の形式]タブ-[アート効果]から、

画像をぼかしたり、鉛筆画っぽくしたり、アート効果を設定できます。

[スポンサードリンク]

このアート効果の設定されている画像が複数存在するときに、それらを選択してアート効果を解除しようとしても、複数画像が選択された時点でコマンドが使用不可の状態になってしまいます。

画像を1つずつ順番に選択して、アート効果なしに設定するのが面倒だったので、PowerPointマクロを作成しました。

画像をアート効果なしにするサンプルマクロ

スライドを選択しておいてから以下のマクロを実行すると、そのスライド上に存在する画像がアート効果なしになります。

Sub アクティブスライドの画像をアート効果なしにする()
On Error GoTo ErrHndl

 Dim shp As Shape
 For Each shp In ActiveWindow.Selection.SlideRange.Shapes
  If shp.Type = msoPicture Then
   
   Dim efct As PictureEffect
   For Each efct In shp.Fill.PictureEffects
    efct.Delete
   Next
  
  End If
 Next

Exit Sub
ErrHndl:
 MsgBox "スライドを選択しておいてから実行してください。"
 Err.Clear
End Sub

サンプルマクロで行っている処理

アクティブスライド上の全Shapeに対してFor Each~Nextループを回して、

 Dim shp As Shape
 For Each shp In ActiveWindow.Selection.SlideRange.Shapes

Shapeが画像だったときに、

  If shp.Type = msoPicture Then

PictureEffectsコレクションに対してFor Each~Nextループを回して、PictureEffect.Deleteメソッドで、アート効果をなしの状態にしています。

   Dim efct As PictureEffect
   For Each efct In shp.Fill.PictureEffects
    efct.Delete

ちなみにPictureEffectsコレクションとPictureEffectオブジェクトは、PowerPointライブラリではなくOfficeライブラリに属しています。

最終更新日時:2024-11-01 13:10

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » 画像 » 画像のアート効果を無しにするPowerPointマクロ

Copyright © インストラクターのネタ帳 All Rights Reserved.

.