Django Girls and Boys 備忘録

Python、Selenium、Django、java、iPhoneアプリ、Excelマクロなどで気付いたこと、覚えておきたいことなどを載せていきます。

【Excel 名前の定義】「名前"○○○"は既に存在します。この名前にする・・・」のメッセージ表示を解決する方法


ExcelVBAを使ってシートのコピーのようなことをしていたら突然以下のようなメッセージが出だして対応に困ったことがありました。

 

「名前"○○○"は既に存在します。この名前にする場合には、[はい]をクリックします。移動またはコピーを行うために"○○○"の名前を変更する場合には[いいえ]をクリックします。」

 

今回は、その対応方法の説明になります。

 

 

 

1.対応方法

 

内容的には、古いExcelを使用している場合に、発生するようなのですが、そのExcel「名前の定義」がされている時にシートのコピーを行うと発生するということです。

 

自分自身、「名前の定義」などというものを意識的に設定した覚えはなかったのですが、そのファイルが何かを流用したようなファイルだったか、それとも自動的に名前が付けられるような場合もあるのかですが、いつの間にかかなりの数の名前が設定されていました。

 

結果的には、この「名前の定義」の名前自体が不要であれば削除してあげればいいというようなものです。

 

具体的には、

1.まずは、

メッセージが出なくなるまで「はい」をクリックする

 

2.以下のように、

「数式」タブの「名前の管理」をクリックすると、名前の管理用ウインドウが表示されますのでそこにある不要な名前(#REF!などと表示のあるもの)を削除する

 

とすることで、メッセージが出なくなります。

 

削除に際しては、プリントエリアを指定する「Print_Area」とタイトル行と列を指定する「Print_Titles」は削除せずに残します。

 

名前の定義削除方法1

名前の定義削除方法1

 

ただし、まれにそれを行ってもまだ表示される場合があります。

 

これは、VBAなどで、

 

「名前の定義」を非表示にされている場合がある

 

ということのようなのですが、その場合には、「名前の定義」を表示させてやらなければなりません。

 

VBAを使用して非表示の「名前の定義」を表示させる方法は以下のようになります。

 

Sub VisibleName()
    Dim n   As Name
    
    For Each n In ActiveWorkbook.Names
        n.Visible = True
    Next
End Sub

 

これをVBA側の標準モジュールなどに記載して実行してやれば「名前の定義」に名前が表示されるようになります。

表示されたら同様に不要な定義を削除すればメッセージが表示されなくなります。

 

 

 

関連記事:

【Excel】の「開発」タブを表示させる方法 - Django Girls and Boys 備忘録

 

【Excel】プルダウンリストの設定方法 - Django Girls and Boys 備忘録

 

【Excel】ボタンの表示文字を改行する方法 - Django Girls and Boys 備忘録

 

【Excel】プルダウンリスト 設定方法、元データ追加方法、元データ変更方法 - Django Girls and Boys 備忘録

 

【Excel マクロ(VBA) 行削除】条件を満たした行を削除する方法(For~Next文を使用) - Django Girls and Boys 備忘録

 

【Excel マクロ(VBA)】最大行番号、最大列番号を取得する方法 - Django Girls and Boys 備忘録

 

【ExcelマクロからのI.E.操作】I.E.のセキュリティに絡むエラー(オートメーションエラー)発生時の対応方法 - Django Girls and Boys 備忘録

 

【Excel VBA】シート削除時などに確認メッセージを表示しない方法 - Django Girls and Boys 備忘録

 

【Excel】数式の計算方法について、計算方法の自動/手動変更方法 - Django Girls and Boys 備忘録