やっと解決したのでご報告。大きなエクセルを扱っていると、 シートコピーをする際に以下のメッセージが表示されて、何度も「はい」をクリックしなければならない場合があります。
移動またはコピーしようとしている数式またはシートには、移動またはコピー先のワークシートに既にある名前’AAAA’が含まれています。この名前を使用しますか?
思いっきりハマりましたが、そしてWEB上には色々情報有りますが、幾つか問題が出たので、まとめて解決。Macの場合は更に厄介で、名前の管理がいまいち使えません。。。(ので、手動で名前を消しまくる、という途方もない作業に、、、。VBAで解決しましたが、どちらにしても相当時間かかりました。。。)
手順としては1.非表示の名前まで表示させる。2.VBAで全部消す。という形です。
表示させる部分はこちらを参照。中のコードで使う部分は下記の通り。(Macroの名前を日本語にすると不具合出る場合があるので、その部分のみ、変更済み)
Sub showname() Dim name As Object For Each name In Names If name.Visible = False Then name.Visible = True End If Next End Sub
なお、Macroの追加がわからない場合は(モジュールの追加がMacには見つからない)なんでも良いので、記録マクロをつくって、すぐに記録終了→VBエディタで上記をコピペ。です。
次は名前の定義の削除を一括で。色々見ましたが、多分下記が汎用性高く良さそう。こちらより引用
Sub DeleteDefinedNames() Dim n As Name For Each n In ActiveWorkbook.Names On Error Resume Next ' エラーを無視。 n.Delete Next End Sub
コレでなんとか、シートを自由にいじれるようになりましたとさ。困ったのはステップ2の待ち時間。1000とか名前がついていると、まあ、結構待ちます。10-15分とか。待ちきれず、何度もキャンセルしてしまった。。。気長に待ってください。