[Excel] エラー1004の原因と対処(VBAマクロでシートのコピーが失敗した話)

事象

ExcelのVBAマクロ内でシートのコピーを行おうとしたところ以下のようなエラーに遭遇。

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

 

対処

Excelのofficeボタンから、『Excelのオプション』>『保存』>『ファイルの保存形式』で、『Excelブック(*.xlsx)』に変更する。

 

環境

Windows7, Excel 2007

 

同じような事象に遭遇した方

Excel2007でBOOK間のシート移動をVBAで行うとエラーになる

まさにコレですね。上記エラーメッセージは上記サイトから拝借。
(ポップアップ表示されたエラーメッセージ、なんでコピーできやんねん)

こちらで紹介されている回答コメントを参考に、上記対処を実施後にマクロを再実行したところ、無事解決。

 

参考:MSのサイト

Excel で、プログラムを介してワークシートをコピーすると「実行時エラー 1004 」が発生する

自動翻訳なので分かり辛いが、別の理由で発生するケースもあるっぽい。

 

マイクロソフトで学んだこと、マイクロソフトだからできること。
樋口 泰行

4492502165

関連商品
変人力―人と組織を動かす次世代型リーダーの条件
「愚直」論 私はこうして社長になった
スマホでアップルに負けてるマイクロソフトの業績が絶好調な件
グーグル、アップル、マイクロソフトに就職する方法
なぜ、あなたの仕事は終わらないのか スピードは最強の武器である
by G-Tools

[Excel] vlookupで値を比較をした際に、空白セルの結果に0が入る場合の対処

vlookupで値を比較をした際に、空白セルの結果に0が入る場合の対処についてのメモ。

・対処
vlookupの数式の末尾に「&””」を付与する。

「&””」を付与することで結果が文字列になって解決するようだ。

・例
=VLOOKUP($A1,$B$1:$C$100,2,FALSE)&””

 

EXCELビジネス統計分析 [ビジテク] 第2版 2013/2010/2007/2003対応 EXCELビジネス統計分析 [ビジテク] 第2版 2013/2010/2007/2003対応
末吉 正成 末吉 美喜翔泳社 2014-01-25
売り上げランキング : 4021

Amazonで詳しく見る by G-Tools