事象
ExcelのVBAマクロ内でシートのコピーを行おうとしたところ以下のようなエラーに遭遇。
?err.Description
移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。データを別のブックに移動またはコピーするには、データを選択して、[コピー] コマンドと [貼り付け] コマンドを使用して移動先またはコピー先のブックのシートに挿入してください。
?err.Number
1004
対処
Excelのofficeボタンから、『Excelのオプション』>『保存』>『ファイルの保存形式』で、『Excelブック(*.xlsx)』に変更する。
環境
Windows7, Excel 2007
同じような事象に遭遇した方
Excel2007でBOOK間のシート移動をVBAで行うとエラーになる
まさにコレですね。上記エラーメッセージは上記サイトから拝借。
(ポップアップ表示されたエラーメッセージ、なんでコピーできやんねん)
こちらで紹介されている回答コメントを参考に、上記対処を実施後にマクロを再実行したところ、無事解決。
参考:MSのサイト
Excel で、プログラムを介してワークシートをコピーすると「実行時エラー 1004 」が発生する
自動翻訳なので分かり辛いが、別の理由で発生するケースもあるっぽい。
マイクロソフトで学んだこと、マイクロソフトだからできること。
樋口 泰行
関連商品
変人力―人と組織を動かす次世代型リーダーの条件
「愚直」論 私はこうして社長になった
スマホでアップルに負けてるマイクロソフトの業績が絶好調な件
グーグル、アップル、マイクロソフトに就職する方法
なぜ、あなたの仕事は終わらないのか スピードは最強の武器である
by G-Tools