はじめに

モダンなITシステム開発の現場で大人気なExcel。
皆さんも方眼紙を作って最新のパラメータを管理したり、
「え、WordじゃなくてExcelで!?」という使い方をしたりますよね。
掲題のエラーに直面するたびにググるのに疲れたので、まとめます。

エラーが出る理由

名前の定義が残っているから。

エラーを回避する

画面上部のリボンから [ 数式 ] > [ 名前の管理 ]を選択する。
ctrl + F3でもいい。

名前の管理.PNG

軒並み残っているゴミを削除してきれいにする。

名前の管理をクリア.PNG

まだエラーが出る場合の理由

非表示の名前の定義が残っているから。

しぶといエラーを回避する

VBAを使う。

Visual Basic Editorを開く。

Alt + F11で開く。
そんなショートカットは使いたくないという場合は、[ 開発 ] > [ Visual Basic ] から開く。

visual basic editor.PNG

[ 開発 ] なんてタブは無い、という場合は以下の手順に則る。

[開発] タブを表示する – Office サポート

1.[ファイル] タブで、[オプション]、[リボンのユーザー設定] の順に移動します。
2.[リボンのユーザー設定] および [メイン タブ] の下の [開発] チェック ボックスをオンにします。

開発.PNG

コードを貼って動かす

[ 挿入(Alt + I) ] > [ 標準モジュール(M) ] でウィンドウを開き、以下をペーストする。

貼ろう
Sub osouji()
Dim C As Name
For Each C In Names
  C.Delete
Next
End Sub

VBE.PNG

ペーストした部分のウインドウを閉じ、[ 実行(F5) ] > マクロの画面で[ 実行(Enter) ]。
この状態ですべての名前の定義が消えているはず。

不要であればVBEの画面で [ ファイル(Alt + F) ] > [ Module1 の解放(R) ]で今回作成したモジュールの掃除。(エクスポートしておくことも可。)Alt + F11でVBEを閉じる。

おわりに

どんなに時代が進んでもExcelは不滅だと思う。
ガッチガチの設計書がこの世にある限り。

TOP