エクセルは他のブック(ファイル)にシートを丸々コピーすることができますが、意外といろんなエラーが出ます。
その中の1つが、『移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。』というやつ。
原寸大のままだと、小さい画面ではエラーメッセージが小さくなって読めないので、2つに分割してみました。
この記事では、コピー/移動ができない現象が発生する原因と、シートをコピー/移動する方法を解説しています。
ぜひ参考にしてください!
「移動先またはコピー先のブックの行列数が、、、」が表示される原因
このエラーの正確なメッセージは以下の通りです。
メッセージを読むと、コピー先のブックの行数が少ないと書かれています。
実際に、バージョンごとのブックの最大行数、最大列数、拡張子を次にまとめているので、参考にしてください。
Excel2000/Excel2003の最大行数、最大列数、拡張子
Excel2000/Excel2003のブックの最大行数、最大列数、拡張子です。
- 最大行数:65,536行
- 最大列数:256列
- 拡張子:xls
Excel2007~Excel2021の最大行数、最大列数、拡張子
Excel2007/Excel2010/Excel2013/Excel2016/Excel2019/Excel2021のブックの最大行数、最大列数、拡張子です。
- 最大行数:1,048,576
- 最大列数:16,384
- 拡張子:xlsx
これを見ると、Excel2003までのバージョンとExcel2007以降の最新バージョンでは最大行数と最大列数が異なることがわかります。
従って、Excel2007以降のエクセルをExcel2003以前のバージョンにコピー/移動するとエラーが出るということです。
結局、今回の現象は新しいバージョンのシートを古いバージョンのシートにコピー/移動することが原因ですが、以下のようにまとめることができます。
拡張子xlsxのシートを拡張子xlsのエクセルにコピー/移動した場合。
実際に確認してみると、コピー先の拡張子とコピー元の拡張子が、xlsとxlsxで異なっていることがわかると思います。
シートのコピーはセル単位でコピー/移動するしかない
バージョンが新しいエクセルにどうしてもコピーしたい場合は、『コピー元のシート内のセルを選択してコピー/移動』するしかありません。
ただし、セルをそのままコピーしただけでは、列幅や行高さはコピーされないため、レイアウトが崩れてコピーされてしまいます。
そんな時は、『元の列幅を保持』して貼り付けましょう。
↓これはコピー元でコピーした行をコピー先で『元の列幅を保持』して貼り付けた例です。
2行目から11行目までコピーした行ですが、行高さ、列幅もコピーされているのがわかると思います。
この『元の列幅を保持』して貼り付ける方法については、こちらの記事で詳しく手順を解説しているので、参考にしてください。