[Excel] ブック間のシートコピーができない場合の対処法

※当サイトでは広告を掲載しています

Excelのブックにある任意のシートを別のブックにコピーしようと思ったら、

移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。データを別のブックに移動またはコピーするには、データを選択して、[コピー]コマンドと[貼り付け]コマンドを使用して移動先またはコピー先のブックのシートに挿入してください。

というエラーが出てコピーできなかったことはありませんか?以下のようなダイアログで表示されていると思います。

Excelシートコピーエラー
画像クリックで拡大

エラーメッセージを読んでもいまいちピンと来ないし、意味がわからないですよね。自分もそうでした。でも、ちょっとした一手間でコピーできるようになりますので、その対処法をご紹介します。

コピーできない原因

このエラーが出た場合は、コピー元とコピー先のExcelブックのバージョンを確認してみましょう。コピー元は「.xlsx」という拡張子で、コピー先は「.xls」という拡張子になっていませんか?

Excelブックのバージョンによるエクスプローラーの表示の違い
画像クリックで拡大

拡張子「.xls」はExcel97-2003ワークシートといって、古いExcelでも開けるよう、互換性を保った形式になっています。そして「.xlsx」の方は、Excel2007以降で使われるようになった新しい形式で、ファイルサイズもかなり小さくなりました。中身はZIPで圧縮されたXML形式になっています。

新しい形式のエクセルシートは、そのままでは古い形式のブックにはコピーができないために、エラーとなってしまうようです。

ExcelブックのバージョンによるExcel上での表示の違い
画像クリックで拡大

もうひとつの判断方法として、「互換モード」表記があります。上記キャプチャ画像を見ていただくとわかりますが、上の古い形式の方ではタイトルバーに「互換モード」と表示されています。この「互換モード」と表示されていないブックから、「互換モード」と表示されているブックへのコピーがエラーになります。

コピーするための対処法

方法1:コピー先も新しい形式にする

新しい形式から古い形式にコピーができないのであれば、コピー先も新しい形式にしてしまえばいいのです。コピー先のExcelブックを開き、名前をつけて保存で「Excel ブック(*.xlsx)」を選択して保存するだけで、新しい形式で保存されます。

Excelブックの名前をつけて保存時のファイル形式指定
画像クリックで拡大

保存した後は一度Excelを終了させて、新しい形式の方で開き直してからシートのコピーを試してみてください。

方法2:コピー元を一旦古い形式にする

方法1とは逆パターンで、コピー先のExcelブックを新しい形式で保存できない場合、コピー元を一旦古い形式で保存してしまえば、コピーできるようになります。コピー元のExcelブックを開き、名前をつけて保存で「Excel 97-2003 ブック(*.xls)」を選択して保存します。

保存した後は一度Excelを終了させて、古い形式の方で開き直してからシートのコピーを試してみてください。コピーした後は、コピー元の古い形式は削除してしまって大丈夫です。

そもそもエラーメッセージがわかりにくい

Excelに限らず、Office製品はいずれもエラーメッセージが非常にわかりにくいと思います。直接「これが原因!」というエラーではなく、今回のようにトンチンカンなメッセージを表示されても、何が原因なのかがさっぱりわかりません。

でも実はこれ、Excelブックの古い形式と新しい形式で、1シートあたりが持てる最大行数・列数に関係しているのです。古い形式(Excel97-2003形式)では1シートあたり65,536行、256列まで扱えることに対し、新しい形式では1,048,576行、16,384列まで扱うことができるようになっています。なので、新しい形式から古い形式にコピーしようとすると、行数・列数が入り切らなくて、あんなエラーメッセージが表示されるという訳です。

もっとシンプルに「行数または列数が大きすぎてコピーできません」というエラーメッセージなら、もうちょっとわかりやすいのにね。

ちなみに、メッセージに書いてある通りに新しい形式のコピー元シート全体を「コピー」し、古い形式のコピー先シートに「貼り付け」をしたら、行の高さと列の幅がコピーされただけで、中身は真っ白でした。ダメじゃん!

さいごに

この現象はExcel2013とExcel2016、Excel2019の3バージョンで確認していますが、おそらくExcel2007やExcel2010でも同様じゃないかと思われます。バグや不具合の類ではなく、ただ単にファイルの形式が変わったこと(新バージョンで扱える量が増えたこと)による弊害なんじゃないかな。


[Excel] 英小文字が勝手に大文字に変換されてしまうときは
Excelにはオートコレクトという自動変換機能があり、英字の大文字小文字の間違いを自動修正してくれます。 これ、英字文章を書いているときは便利なのですが、全部小文字で入力したい場合や、メールアドレスなどを全角文字で入力したいときでも自動変換...
iPadでExcelファイルを操作する
PCで作成したExcelファイルを、外に持ち出してiPadでも表示・編集したいと思った方向けの記事です。 iPadでExcelファイルを操作する場合、手っ取り早いのは、iPadにもExcelをインストールすること。Office365を契約し...

コメント

タイトルとURLをコピーしました