シート見出しを右クリックしても[移動またはコピー]が灰色のまま、あるいは別ブックへコピーしようとすると「既に…という名前が存在します」が延々と出る。エクセルでシートのコピーができないとき、原因は7つの系統に収まります。この記事では、どれに当たっているかを1〜2分で切り分けてから、公式の手順どおりに直していきます。ブックを壊す操作は使いません。
まず確認する1つ:[校閲]タブの[ブックの保護]が押された状態になっていないか
シート見出しを右クリックしたときに、[挿入][削除][名前の変更][移動またはコピー]がまとめて灰色になっているなら、ほぼこれです。Microsoft の公式ヘルプは、ブックのシート構成を保護するとシートの挿入・削除・名前の変更・移動・コピー・非表示・非表示解除など、ブックの構造を変更するオプションがすべて使用できなくなると明記しています。
確認は5秒で終わります。[校閲]タブを開き、[ブックの保護]アイコンが強調表示(押された状態)になっていれば保護中です。[ファイル]→[情報]→[ブックの保護]でも同じことが分かります。灰色になっている項目が「移動またはコピー」だけなら保護以外の原因なので、次の切り分け表に進んでください。
症状から原因を当てる切り分け表
「どこで止まっているか」で原因はきれいに分かれます。自分の症状に当たる行から読み進めてください。
症状 | 見分け方 | 直し方 |
|---|---|---|
右クリックのメニュー全体が灰色 | [校閲]→[ブックの保護]が強調表示 | ブックの保護を解除する(原因1) |
[移動またはコピー]は開くが、[移動先ブック]に相手のブックが出てこない | 相手のブックを開いているか、別のウィンドウで開いていないか | 同じ Excel から開き直す(原因6) |
OKを押すとエラーで止まる/貼り切れない | タイトルバーに[互換モード]と出ている | コピー先を .xlsx に変換する(原因2) |
シート名を入れ直すよう促される | 同名シートがある/31文字超/記号が入っている | シート名を付け替える(原因3) |
「既に…という名前が存在します」が何度も出る | [数式]→[名前の管理]に大量の名前が並ぶ | 不要な名前を削除してからコピーする(原因4) |
右クリックしても[移動またはコピー]という項目自体が無い | ブラウザで開いている(Excel for the web) | デスクトップ版で開くか、データを貼る(原因5) |
コピーはできたが数式やグラフが壊れた | 他シートを参照する数式・3-D参照・グラフがある | 参照ごと移す設計に直す(原因7) |
原因1:ブックが保護されている(シートの保護とは別物)
右クリックメニューがまるごと灰色ならこれです。ここで混同しやすいのが、「シートの保護」と「ブックの保護」は効く対象がまったく違うという点です。シートの保護はセルの中身の編集を止めるもので、シート見出しの操作は止まりません。シート構成(挿入・削除・移動・コピー)を止めるのは、ブックの保護のほうです。
解除の手順は次のとおりです(Excel for Windows / Mac 共通)。
- [校閲]タブを開く。
- [ブックの保護]が強調表示されていることを確認する。
- [ブックの保護]をクリックする。
- パスワードが設定されている場合はパスワードを入力し、[OK]をクリックする。
注意点が1つあります。公式ヘルプは、パスワードを紛失した場合、Excel は回復できませんと明記しています。設定者が分からないブックなら、保護の解除をあきらめて「必要なシートのデータだけを新しいブックに貼る」ほうが早いことが多いです。なお Excel for Mac のパスワードには15文字までの制限があるため、Windows 側で16文字以上のパスワードを付けたブックは Mac で開けません。
ちなみに、シートの保護のほうがかかっていると、セルの結合の解除や並べ替えが弾かれます。並べ替えで止まっているなら原因は別で、結合セルがあると並べ替えができない理由のほうが近道です。
原因2:コピー先のブックが古い形式(.xls・互換モード)
タイトルバーのファイル名の横に[互換モード]と角かっこ付きで出ていたら、そのブックは Excel 97-2003 形式(.xls)です。公式ヘルプによると、Excel 97-2003 のシートは高さ65,536行・幅256列しかありません。現在の .xlsx は1,048,576行・16,384列なので、コピー元のシートがこの枠に収まらないとき、コピーはそのまま通りません。
コピー先を現在の形式に変換します。
- コピー先のブックを開く。
- [ファイル]→[情報]→[互換モード]→[変換]をクリックする。
- 変換後のブックを保存し、閉じてから開き直す。
- あらためて[移動またはコピー]を実行する。
変換すると .xlsx になるため、97-2003 版の Excel を使っている相手には渡せなくなります。社外にそのまま送るファイルなら、変換ではなく「必要な範囲だけを新しい .xls ブックに貼る」判断もありえます。
原因3:シート名が重複している/使えない文字が入っている
コピー自体は始まるのに、シート名の入力をやり直させられるならこれです。公式ヘルプが挙げているワークシート名の制約は次のとおりです。
- 空白(名前なし)にはできない。
- 31文字以上は入力できない。
- 特殊文字の / \ ? * : [ ] は使えない。たとえば 02/17/2016 は無効だが、02-17-2016 なら問題ない。
- 先頭と末尾をアポストロフィ(')にはできない(名前の中には使える)。
- 「履歴」という名前は付けられない。Excel 内部で使われる予約語のため。
コピー先に同じ名前のシートがある場合、Excel は自動的に「売上集計 (2)」のような名前を付けようとします。ここで元の名前が長いと、括弧の分を足した結果が31文字の上限に触れて止まります。対処は単純で、コピーする前にコピー元のシート名を短くしておくことです。シート見出しをダブルクリックするか、右クリックして[名前の変更]で変えられます。日付をシート名に使う運用なら、スラッシュではなくハイフン区切りに統一しておくと事故が減ります。
原因4:「名前の定義」が重複していて、ダイアログが延々と出る
別ブックへコピーした瞬間に「移動先またはコピー先に既に○○という名前が存在します。この名前を使用しますか?」というダイアログが出て、[はい]を押しても押しても次が出てくる——これは、コピー元のシートに「名前の定義」(名前付き範囲)が大量に残っている状態です。何十個もあれば、その数だけダイアログが出ます。
[はい]を連打しても、名前ごと相手のブックに持ち込むだけで、次回も同じことが起きます。コピーを始める前に、コピー元のブックで不要な名前を掃除します。
- [数式]タブの[定義された名前]グループで[名前の管理]をクリックする。
- [フィルター]から[エラーのある名前]を選ぶ。参照先が壊れて #REF などになっている名前だけが残る。
- 一覧の先頭をクリックし、末尾を Shift キーを押しながらクリックしてまとめて選ぶ(飛び飛びに選ぶときは Ctrl キー)。
- [削除]をクリックする。
- 確認が出たら[OK]をクリックする。
- フィルターを[ワークシート内にある名前]に切り替え、そのシート由来の使っていない名前も同じ手順で消す。
公式ヘルプには、セルの内容を変更している間は[名前の管理]ダイアログを使用することはできませんという注意もあります。数式を編集しかけのままだとボタンが効かないので、Esc キーで編集を抜けてから開いてください。
この現象は、何年も継ぎ足してきた集計ブックほどひどくなります。数式が絡んだ不具合が同時に出ているなら、エクセルの数式が計算されない原因と対処もあわせて点検しておくと、コピー後のズレを防げます。
原因5:共有ブック機能がオン、または Web版・共同編集中
ブラウザで開いていたり、複数人で同時に開いていたりするときは、そもそも機能が用意されていないことがあります。環境ごとに事情が違うので、どれに当たるかを先に決めてください。
Excel for the web(ブラウザ版)
公式ヘルプは、Excel for the web では、デスクトップ アプリのようにシート タブを右クリックしても、シートを移動またはコピーするオプションは使用できないと説明しています。同じブック内の複製だけは可能で、シート見出しを右クリックして[複製]を選びます。ただしグラフ、図、図形を含むワークシートを複製しようとするとエラーが表示されることがあるとも書かれています。
別のブックへ移したいときの公式の代替手順はこうです。
- コピー元のシートで Ctrl+Space を押し、続けて Shift+Space を押して全データを選ぶ。
- Ctrl+C でコピーする。
- 貼り付け先のブックを開き、ステータスバーの[+]で新しい空白のワークシートを追加する。
- 新しいシートの先頭セルを選び、Ctrl+V で貼り付ける。
この方法では条件付き書式が失われます(公式ヘルプの注記)。書式まで丸ごと移したいなら、デスクトップ版の Excel で開き直すのが確実です。
従来の「共有ブック」機能がオンになっている
[校閲]タブに[ブックの共有]系のボタンが残っている古い運用なら、これを疑います。共有ブックは共同編集に置き換えられた以前の機能で、公式ヘルプはサポートされない操作としてワークシートの削除、セルのブロックの挿入または削除、セルの結合、ワークシートやブックの保護・保護の解除などを挙げています。表の作成、ピボットテーブル、スライサー、条件付き書式の追加・変更もできません。シート構成をいじる前に、共有を解除するのが筋です。
OneDrive / SharePoint で共同編集中
他の人が同じブックを開いている間は、そもそも編集が通らないことがあります。公式ヘルプは、共同編集がブロックされる条件としてファイルがパスワード保護で暗号化されている、最終版に設定されている、サポートされていないファイル形式、ISO 厳密形式の .xlsx、ファイルがチェックアウトされている、共同編集をサポートしないバージョンの Excel で開かれているなどを挙げています。誰が開いているかが分からないなら、他の人が編集中でエクセルが開けないときの対処から先に片づけてください。
原因6:コピー先ブックが一覧に出てこない/読み取り専用で開いている
[移動またはコピー]ダイアログは開くのに、[移動先ブック]の一覧に目的のブックが無い、というケースです。公式の手順は「シートの移動先のブックを開きます」から始まります。つまり、コピー先のブックが閉じていると一覧には出ません。
- コピー元のブックを開いた状態のまま、同じ Excel のウィンドウで[ファイル]→[開く]を選ぶ。
- コピー先のブックを開く。
- コピー元のシート見出しを右クリックし、[移動またはコピー]を選ぶ。
- [移動先ブック]でコピー先のブックを選ぶ(新しいブックへ移したいときは[新しいブック])。
- [挿入先]で位置を選び、[コピーを作成する]チェックボックスをオンにする。
- [OK]をクリックする。
手順5を飛ばすと、コピーではなく移動になります。元のブックからシートが消えて焦る事故の大半はこれです。エクスプローラーからファイルをダブルクリックして開くと、別のウィンドウ側で開いて一覧に出ないことがあるので、上の手順3のように「コピー元と同じ Excel から開き直す」のが確実です。
あわせて、コピー元が読み取り専用で開かれていないかも見てください。公式ヘルプは、ファイルがロックされる理由として以前のクラッシュによりファイルがロックされている、他の作成者がファイルをチェックアウトした、別の作成者が別のバージョンの Office アプリケーションを使用している、サーバーが共同編集機能をサポートしていないを挙げています。OneDrive 上のファイルで似た症状が出ているなら、OneDrive の競合コピーができる原因と直し方も確認しておくと安全です。
原因7:グラフ・テーブル・ピボットがシートをまたいで参照している
コピー自体は通ったのに、移した先で数式が #REF! になったりグラフが空になったりする場合です。公式ヘルプは、シートを別のブックに移動するときの注意として、エラーが発生したりデータで予期しない結果が生じたりする場合があるので、そのシート上のデータを参照している式またはグラフを確認してください、3-D 参照によって参照されるシートを移動すると、計算にシート上のデータが含まれることも、除外されることもありますと書いています。
コピーする前に、次の3点を確認しておくと事故がほぼ消えます。
- コピーするシートの数式に、他のシート名(例: マスタ!A1)が含まれていないか、Ctrl+F で「!」を検索して確かめる。
- グラフやピボットテーブルの参照元が、コピーするシートの外にないか確認する。
- 他のシートも一緒に必要なら、シート見出しを Ctrl キーを押しながら複数選んで、まとめて[移動またはコピー]する。
参照元のシートを置いていくと、コピー先では外部ブックへのリンクに書き換わります。その状態で元ファイルを移動・削除すると、あとから一斉に壊れます。「関係するシートは一式で運ぶ」と決めておくのが安全です。
毎回コピーでつまずくなら、ブックの作り方を変えたほうが早い
ここまでの7つは、どれも1回きりなら数分で片づきます。問題は、月次で同じ作業をしていて毎回どれかに当たる場合です。次のどれかに心当たりがあれば、原因は操作ではなくブックの構造にあります。
- 「先月分シートをコピーして日付を書き換える」が毎月の手順書に入っている。
- 1つのブックに部署別・月別のシートが数十枚あり、名前の定義が誰も把握できない数になっている。
- 集計用の数式が、シートをまたいで縦横に走っている。
- 担当者が休むと、誰もそのブックを触れない。
この形は、人が増えるほど壊れる確率が上がります。データは1枚に縦持ちで貯め、月次の見え方は数式やピボットで切り替える設計にすると、そもそもシートを複製する必要がなくなります。複数人で使うファイルなら、複数人で使うスプレッドシートが壊れる原因も似た構造の話なので、あわせて読むと判断しやすくなります。
私たちはこういう作業を、入力画面と集計を分ける形に作り替えるお仕事もしております。記事の途中で恐縮ですが、よろしければスプシ de 社内アプリのページも合わせてご覧いただけたら嬉しいです。
よくある質問
シート見出しを右クリックしても[移動またはコピー]が灰色です。
ブックのシート構成が保護されている可能性が高いです。[校閲]タブの[ブックの保護]アイコンが強調表示されていれば保護中で、Microsoft の公式ヘルプによると、この状態ではシートの挿入・削除・名前の変更・移動・コピー・非表示がすべて使えなくなります。[ブックの保護]をクリックし、パスワードがあれば入力して解除してください。
別ブックへコピーすると、名前が既に存在しますというダイアログが何度も出ます。
コピー元のシートに名前の定義が大量に残っているためで、その数だけダイアログが出ます。コピーする前に、[数式]タブの[定義された名前]から[名前の管理]を開き、フィルターでエラーのある名前に絞ってまとめて削除してください。数式を編集しかけのままだと名前の管理は開けないので、Esc キーで抜けてから操作します。
ブラウザ版のエクセルでシートを別のブックにコピーできません。
できない仕様です。Microsoft の公式ヘルプによると、Excel for the web ではシートタブを右クリックしても移動またはコピーのオプションは表示されません。同じブック内の複製だけが可能です。別ブックへ移したいときは、全データをコピーして相手のブックの新しいシートに貼り付けるか、デスクトップ版の Excel で開き直してください。なお貼り付けでは条件付き書式が失われます。
シート名が原因でコピーが止まることはありますか。
あります。公式ヘルプが示すワークシート名の制約は、空白不可、31文字以上は入力不可、記号のスラッシュ・円記号・疑問符・アスタリスク・コロン・角かっこは使用不可、先頭と末尾のアポストロフィ不可、履歴という予約語は不可です。コピー先に同名シートがあると自動で括弧付きの名前になるため、元の名前が長いと上限に触れて止まります。先に短い名前へ変えてください。
コピー先が古い .xls のブックだと失敗しますか。
行や列がはみ出すと失敗します。公式ヘルプによると Excel 97-2003 のシートは65,536行・256列までで、現在の .xlsx の1,048,576行・16,384列より小さいためです。タイトルバーに互換モードと出ていたら、[ファイル]→[情報]→[互換モード]→[変換]で現在の形式に変換してから、あらためてコピーしてください。
シートのコピーでつまずくのは、たいていブックが長く使われてきた証拠でもあります。作り替えたほうがいいのか、今のまま運用を直すだけで足りるのか、判断だけでもお手伝いできます。