エクセルの質問です。

エクセルのSheet1に複数の画像があります。
この画像の名前がpicture1~picture1999の場合は削除し、それ以外の画像は削除しない。
ということはマクロでできるのでしょうか?

ご教示お願い致します。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2015/10/15 21:03:35
  • 終了:2015/10/22 21:05:04

回答(1件)

id:a-kuma3 No.1

a-kuma3回答回数4596ベストアンサー獲得回数19352015/10/15 21:49:57

こんな感じでしょうか。

Sub picture2000未満を消す()

    For Each Shape In ActiveSheet.Shapes
        If Left(Shape.Name, 7) = "picture" Then
            seq = Val(Mid(Shape.Name, 8, Len(Shape.Name) - 7))
            If seq >= 1 and seq <= 1999 Then
                Shape.Delete
            End If
        End If
    Next

End Sub

自動で振られる名前は "Picture" と頭が大文字になりますが、質問には "picture" となっているので、そのようにしてます。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません