VBAでエクセルの名前の定義を一括で削除する

名前の定義をVBAで簡単に削除する方法です。

一般機能で削除する場合は、[名前の管理] で削除対象の名前を選択し、[削除]をクリックします。

参考:エクセルの名前の定義が消せない場合の削除方法

目次

名前の定義設定の確認

エクセルシートの右上のボックス(名前ボックス)の三角(▼)をクリックすると、名前の定義設定がされていいる名前が表示されます。

名前の定義

または[数式]>[定義された名前]グループ>[名前の管理]を選択し「名前の管理」を開きます。

ショートカット:Ctrl + F3

名前の管理

サンプルコード

アクティブなエクセルブックに設定している名前の定義をすべて削除します。

Sub sample()
  Dim n As Name
  For Each n In Names
    n.Delete
  Next n
End Sub

上記のマクロを実行しても残る場合の例です。

名前の管理

名前「動物」だけを削除するマクロを実行した場合。

Sub sample2()
  ActiveWorkbook.Names("動物").Delete
End Sub

実行時エラーが起こります。

実行時エラー

削除できない名前は、テーブル設定等の場合の可能性があります。

参考:エクセルの名前の定義が消せない場合の削除方法

目次