← コード一覧へ戻る
基本セル・範囲

セルの名前を削除する

ブック範囲の定義名InputCellを削除します。

実行前に確認

  • その名前を使う数式が#NAME?などになる可能性があります。実行前にバックアップしてください。

1サンプルコード

Sub Example1161()
    Dim ws As Worksheet
    Dim n As Name
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    On Error Resume Next
    Set n = ThisWorkbook.Names("InputCell")
    On Error GoTo 0
    If n Is Nothing Then
        MsgBox "InputCellがありません。"
        Exit Sub
    End If
    If MsgBox("InputCellの定義を削除します。参照数式がエラーになる場合があります。続けますか?", vbYesNo + vbExclamation) <> vbYes Then Exit Sub
    n.Delete
End Sub
表で見る処理のイメージ実行前・実行後のセルを見比べる

名前を削除すると、その名前を使う数式に影響します。

A・B・Cは列、1・2・3は行です。例えば「B2」はB列の2行目のセルです。この表は説明用のサンプルです。

実行前

実行前のサンプル。列記号と行番号でセルの位置を確認できます。
ABC
1項目値数式の結果
2入力欄100100

実行後

実行後のサンプル。列記号と行番号でセルの位置を確認できます。
ABC
1項目値数式の結果
2入力欄100#NAME?(注目セル)

色付きは注目する場所です。「—」は未入力、「(空文字)」は数式などが返す空の文字列を表します。

確認で「はい」を選んだ場合です。InputCellがSheet1!B2を参照し、C2に =InputCell がある前提です。名前の定義だけを削除しB2は残ります。自動計算、または再計算後のC2を示します。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。名前の管理でブック範囲のInputCellを用意します。

  2. 2

    Alt+F11でVBEを開き、[挿入]→[標準モジュール]へコードを貼り付けます。

  3. 3

    InputCellを削除する定義名に変更します。

  4. 4

    マクロ内にカーソルを置いてF5で実行します。名前の管理から定義名がなくなります。セルの値は残ります。

使っている機能の公式ドキュメント(Microsoft Learn)