Excelの指定した文字列のテキストボックス(図形)を削除する

icon 項目のみ表示/展開表示の切り替え

概要

あるExcelのアドインで図形のテキストボックスが大量に作成され、しかもグラフと重なり選択がしにくく扱いに困りました。
ExcelのVBAによるマクロでカレントシートの指定した文字のテキストボックスを一括削除するプログラムを作成してみました。
以下のExcelファイルをダウンロードし、マクロを有効にした状態でシート上のプッシュボタンを押してください。
検索条件を尋ねるダイアログボックスが表示されますので、希望の文字を入力してOKをクリックすると一致するのテキストボックスを削除します。
textbox.xls

動作環境

Excel 2007,Exce 2011で正常に動作することを確認しました。

ソースコード

' textbox.bas 2014/10/21
' テキストボックスで指定された文字と一致する場合、テキストボックスを削除

Sub textbox_delete()
    Dim str As String
    Dim n As Integer
    n = 0
    ' 文字列を入力
    str = InputBox("削除対象にするテキストボックスの文字列を入力してください。", "テキストボックスの削除条件", "熊")
    For Each myshape In ActiveSheet.TextBoxes
        ' strと一致するテキストボックスであるか確認する
        If myshape.Text = str Then
            myshape.Delete
            n = n + 1
        End If
    Next
    MsgBox n & "個のテキストボックスを削除しました"
End Sub