プロが教える店舗&オフィスのセキュリティ対策術

ExcelVBAで、シートに画像が貼り付けてあるかを判断したいのですが、
画像が貼り付いているならその画像を削除し、貼り付いていなければ何もしない、というExcelVBAを組みたいのですが、画像が貼り付いているかどうかの判断は可能なのでしょうか?
ご存知の方がいらっしゃいましたら、何卒ご教示下さいますよう、宜しくお願い致します。

A 回答 (3件)

TypeName関数で戻り値を判定してみました。



Dim pic As Shape

For Each pic In ActiveSheet.Shapes
If TypeName(pic) = "Picture" Then
pic.Delete
End If
Next
    • good
    • 0
この回答へのお礼

ご回答、誠に有難うございました。
図形全てを削除するわけにはいきませんので、このご回答が一番近いのですが、うまく動作しませんでした。
これから色々と試してみます。
どうも有難うございました。

お礼日時:2010/07/28 09:32

問答無用で消して良いのなら↓だけでも。


ActiveSheet.DrawingObjects.Delete

貼り付けてあるグラフなども消えちゃいますけど。
    • good
    • 0
この回答へのお礼

ご回答、誠に有難うございました。
これから試してみたいと思います。

お礼日時:2010/07/28 09:30

Sub PicDelSamp()



  Dim Sh As Shape

     For Each Sh In ActiveSheet.Shapes '---アクティブシート全ての図形に対し

        Sh.Delete

     Next Sh

  End Sub
    • good
    • 0
この回答へのお礼

ご回答、誠に有難うございました。
これから試してみたいと思います。

お礼日時:2010/07/28 09:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!