スポンサーリンク

Excelで名前の管理に表示されない名前(範囲名)を削除する

Excelの範囲指定に付ける名前の機能は便利なのですが、時々困ったことになります。

通常セル範囲に名前を削除する場合、Excel 2010だと数式タブの名前の管理をクリックして出てくるダイアログでリストから削除したい名前(範囲)を指定し、削除すれば良いのですが、時々このリストに名前が出てこないものが有ります。こういう見えてこない名前があると、ワークシートコピー時に一々訊かれたりして非常ににうざったい。削除したい、しかし消せないみたいな状態になって発狂しそうです。

発狂したので、Tweetしたところ縄神様@twit_ahfさんよりVBAでないと削除できないはずとヒントをいただけたので、書いてみました。さすが神様。


Sub いらない名前の削除()
    Dim n As Name
    Debug.Print "===================================="
    For Each n In ActiveWorkbook.Names
        Debug.Print n.Name
        If Not n Is Nothing Then

            If InStr(1, n.Name, "iranainamae", vbTextCompare) > 0 Then
                Debug.Print n.Name & " is deleted."
                n.Delete
            End If

        End If

    Next
End Sub

しかし、普通のUIで見つからないのって面倒くさいですよね

(追記)
ThisWorkBookに上のマクロは書いてくださいね。

コメント

タイトルとURLをコピーしました