シートのコピーで「コピー先のブックに挿入できません」となる場合の対応

スポンサーリンク

エクセルは他のブック(ファイル)にシートを丸々コピーすることができます。

でもシートのコピーって以外といろんなエラーが出るんですよね。

その中の1つが、『移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。』というやつ。

 

メッセージが1行でつらつら書かれているので、読みづらくてしょうがありません。

移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。

↑は原寸大です。

せめて改行してくれないでしょうか^^

 

原寸大のままだと、小さい画面ではエラーメッセージが小さくなって読めないので、2つに分割してみました。

なぜ、「コピー先のブックに挿入できません」のエラーが出るのか

エラーが出る原因はなんでしょうか。

冒頭でも書いていますが、正確なエラーメッセージは次の通りです。

 

『移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。』

 

コピー先のブックの行数が少ないといっていますね。

エクセルはバージョンによって、行数(列数)の最大数が異なります。

 

当然新しいバージョンの方が行数が多くなるんですが、僕が実際にエラーが出た時はコピー元がExcel2016でした。

コピー先がどのバージョンで作成されたエクセルかは正確にはわかりませんが、Excel2016の最大行数、最大列数より少ないバージョンのエクセルとなると、Excel2000、Excel2003しかありません。

Excel2000、Excel2003

  • 最大行数:65,536行
  • 最大列数:256列
  • 拡張子:xls

Excel2007、Excel2010、Excel2013、Excel2016

  • 最大行数:1,048,576行
  • 最大列数:16,384列
  • 拡張子:xlsx

これを見るとExcel2007から、最大行数と最大列数は大きく変更されています。

なので、Excel2007以降のエクセルをExcel2003以前のバージョンにコピーするとエラーが出るということですね。

まとめると、

拡張子がxlsxのエクセルのシートを、拡張子がxlsのエクセルにはコピーはできない』

ということです。

シートのコピーでエラーになるので、自分でシートの中身をコピー&ペーストするしかない

シートのコピーでエラーになる原因はわかりました。

 

バージョンが新しいエクセルにどうしてもコピーしたい場合は、シートをそのままコピーするのではなく、『コピー元のシートの中身をコピーし、コピー先でペースト』するしかありません。

でも単純にコピー&ペーストすると、列幅や行高さはコピーされません。

つまり、レイアウトが崩れてコピーされてしまいます。

 

行の高さや列の幅もコピーできる方法はいくつかありますが、いくらか手間がかかります。

それでも、『元の列幅を保持』して貼り付ければ、一回の貼り付けで行高さ、列幅もコピーされます。

 

↓これはコピー元でコピーした行をコピー先で『元の列幅を保持』して貼り付けた例です。

2行目から11行目までコピーした行ですが、行の高さと列幅が他と違っている(行高さ、列幅もコピーされている)のがわかると思います。

 

この『元の列幅を保持』については、こちらの記事で詳しく手順を解説しているので、参考にしてください。

シートのコピーで「コピー先のブックに挿入できません」となる場合の対応のまとめ

他のブックへのシートのコピーで、『コピー先のブックに挿入出来ません』というエラーが出ることはめったにありません。

なので、このエラーが出た場合はなんでエラーが出るのか理解できないかもしれませんが、そういう場合はコピー元とコピー先の拡張子が違っていないか確認してみましょう。

 

そして、エラーになってもどうしてもコピー先にコピーしたい場合は、今回紹介した『元の列幅を保持』して貼り付ける方法を試してみてください。

データが入ってる行を選択して、貼り付け一回で済むのでそんなに面倒でもありません。

 

『コピー先のブックに挿入出来ません』のエラーが出た場合、今回紹介した方法をぜひ参考にしてもらえればと思います。