• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA コピー貼付時にPC違いでエラーが出る場合)

VBA コピー貼付時にPC違いでエラーが出る場合

このQ&Aのポイント
  • VBAコピー貼付時に特定のPCでエラーが発生する場合があります。
  • マクロ実行時にエラーメッセージ「この操作には同じサイズの結合セルが必要です。」が表示されるPCがあります。
  • 貼付対象のセルは書式設定がされておらず、手動での貼り付けは可能ですが、マクロではエラーが発生します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

#2の回答者です。 >片方でExcelのバージョンを確認すると、「Office 2003 SP3」と記載があり、 >片方のPCでは、「Office 2003」と記載があります。 Excelそのもののバージョンよりも、一種のバグのようなものだと思いますが、それをBugFix しているかは分かりません。つまり、「結合セル」に関わるBugFixは、ほとんど手が付けずに、サポートでは、仕様として返事していたような気がします。 私自身が再現できる所をみると、SP3とかは関係ないような気もします。 私のマクロのコードのどこでエラーが発生したかは分かりませんが、値貼り付けで、"PasteSpecial" は、実際の場では、あまり使われない方法であることは間違いありません。 シート自体を換えてしまった方がよいかもしれません。Excel 2003などのバイナリファイルは、シートの内部に様々な記録を残していますが、それは、更新されずに、ずっと残ったままです。だから、同じ問題は続いているのかもしれません。

その他の回答 (3)

回答No.3

No.1です。 OSのバージョンは関係なし。 Excel2000,Excel2002,Excel2003,Excel2007,Excel2010では、 範囲のコピーを貼付する場合、微妙に異なる仕様となっているということです。 例えば、Excel2003では貼付する範囲の最左上セルをクリックしても貼付出来ますが、 Excel2002では最上行をクリックして貼付する仕様になっています。 また、Excel2000では同範囲をクリックして貼付します。 貼付方法の仕様(全て、値のみ、数式のみ、書式のみetc)によっても 貼付の際の範囲選択が異なります。

kanpei34
質問者

お礼

ご連絡、有難うございました。 Excelのバージョンは、Office2003です。 いずれも同じメディアからインストールしました。 片方でExcelのバージョンを確認すると、「Office 2003 SP3」と記載があり、 片方のPCでは、「Office 2003」と記載があります。 インストールした後のアップデートで、2台のPCにて差が出たのでは? と思います。 アップデート等を行ってみたいと思います。

回答No.2

>マクロ実行時に、PCによりエラーが出る場合があります。 それは、可能性は少ないです。 >セルの状態を見ると、貼付対象のセルは書式設定は無く、貼付可能です。 こちらでも、その現象は再現できました。不思議な現象です。貼り付け先のシート結合セルを取り去っても、結合セルの痕跡が残るようです。 昔の記憶で不確かですが、こんなスタイルで解決できたはずです。他のオプションが必要でしたら、付け加えてください。  Range("J36:S57").Copy  With Worksheets(My_name).Range("L19")   .PasteSpecial Paste:=xlPasteAll   .PasteSpecial Paste:=xlPasteValues  End With

kanpei34
質問者

補足

WindFallerさん、コメント有難うございます。 ご指摘の通り、ソースを変更してみました。 結果はプロパティの条件が悪いのか、エラーが出ました。 再度、調べてみます。 有難うございました。

回答No.1

コピー貼付時にエラーが出る原因は、 Excelのバージョンよって貼付方法が異なる仕様になっているためです。 このトラブルは解消不能です。 よって、 [コピー&貼付時]を[データ取得&データ書込]とする発想の転換をお勧めします。

kanpei34
質問者

補足

YON56さん、コメント有難うございます。 Excelバージョンの確認をしたところ、違っていました。 正常に動作するPCでは、SP3と記載が有り。エラー発生端末では、表示されていません。 OSは、WinXP SP3となっています。 何かアップデートが必要なのでしょうか?