• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL2007で動くマクロがEXCEL2000だとエラーが出ます。)

EXCEL2007とEXCEL2000でマクロのエラーが発生する

このQ&Aのポイント
  • EXCEL2007で動くマクロがEXCEL2000だとエラーが出ます。具体的には、「メソッドまたはデータメンバーが見つかりません」というエラーメッセージが表示されます。
  • このエラーは、EXCEL2007で作成したマクロに含まれる「wordの「@一覧表」文字の部分をExcelで作成した表(B3:E9)に置き換える」という処理がEXCEL2000では正常に動作しないために発生します。
  • 対処方法としては、wdPasteDefaultではなく適切な貼り付け方法を使用することが挙げられます。具体的には、wdPasteTextやwdPasteBitmapなど、EXCEL2000に対応している貼り付けオプションを選択することです。

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

  • ベストアンサー
  • ple_mania
  • ベストアンサー率42% (9/21)
回答No.2

エラーは同じ箇所で出るのですか? Pasteメソッドには引数はないと思いましたたが。Pasteのどこかにカーソルを置いてF1キーを押せばヘルプが見えます。確認してみてください。 もし他の場所にでるなら同様に確認しながら修正する訳ですが、2000と2007の両方で使うなら逆に2007で動くかも確認する必要があります。 判らなくなったらまた質問してください。

pegasusv
質問者

お礼

Pasteメソッドには引数はありませんでした。 引数を削除するとうまく動きました。 再度の回答およびヘルプの使い方も教えて頂き、本当に有難うございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • ple_mania
  • ベストアンサー率42% (9/21)
回答No.1

こんにちは。 日がたっているのですでに自己解決されているかもしれませんが、 Word2000のRangeオブジェクトにはPasteAndFormatというメソッドが ないのではないでしょうか。それとwdPasteDefaultという定数も。 OfficeのVBAはバージョンによってあるものないもの、また仕様が 異なるものがあります。これらもおそらくあとから追加されたもの でしょう。 ただ単に貼り付けるだけならPasteメソッドで代用できないですか? 書式はExcel側で事前に設定するか、Paste後に直すしかないように 見えます。 なかなかいい参考URLは見つけられませんね。もし今後も異なる バージョンのOFFICEに絡んで開発されるのでしたら一般の解説書にも それぞれどのバージョンに対応しているかを記述した辞書的なものが ありますので、手元において参照しながら進められるとよいのではと 思います。

pegasusv
質問者

お礼

回答有難うございました。 Word2000のRangeオブジェクトにはPasteAndFormatというメソッドとwdPasteDefaultという定数がありませんので、ご指摘どおりにPasteメソッドに変えてみたのですが、今度は「引数の数が一致していません。または不正なプロパティーを指定しています。」のコンパイルエラーが出ました。 具体的に、どう直せば良いか教えて頂いたら嬉しいのですが。 自己啓発で業務の合間に色々VBAにチャレンジしている初心者につき、よろしくお願いします。

すると、全ての回答が全文表示されます。

関連するQ&A