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に上のマクロは書いてくださいね。
コメント