• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルマクロエラー「'Cells'メソッドは失敗しました。'_Global'オブジェクト」について)

Excelマクロエラー「'Cells'メソッドは失敗しました。'_Global'オブジェクト」について

このQ&Aのポイント
  • Excel 2000のマクロで、特定のセルに関数を設定する際に「'Cells'メソッドは失敗しました。'_Global'オブジェクト」というエラーが発生することがあります。
  • このエラーは、マクロ内でのCellsメソッドの呼び出しの失敗を示しています。
  • 原因としては、マクロ内でのセルの参照方法やオブジェクトのスコープの問題が考えられます。エラーが発生する原因は様々であり、具体的な原因を特定するためには、マクロのコード全体を確認する必要があります。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

#1です。 > Worksheets("Sheet1") ).Selectとなっていて、 > いきなり、Range・・・ > だったのがいけなかったのでしょうか。 この場合 Range より、次に続く Cells に対するオブジェクトの指定が重要だと思っています。 経験上そう感じているだけなので、何故かは説明出来ませんが、、、

lemon567
質問者

お礼

すみません。"."を見落としていました! Cellsの前に"."をつけ、実行してみましたところ、うまくいきました! ありがとうございました。

lemon567
質問者

補足

With Worksheets(Sheetname$) .Range(Cells(126, 20), Cells(155, 19 + _ 2 * 変数%)).FormulaR1C1 = _ "=(RC[-18]-R[-1]C[-18])/0.04*100" End With として、再実行してみましたが(数式は、若干変更しました)、同様のエラーがでてしまいました。。他に、なにか策はありますでしょうか。 Sheetname$や、変数%には、ちゃんと値が入っているようです。

その他の回答 (1)

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

推測ですが、対象オブジェクトを見失う事があるようです。 With Worksheets("Sheet1")  .Range(.Cells(126, 20), .Cells(155, 19 + 2 * _  変数%)).FormulaR1C1 = _  "=(RC[-18]-R[-1]C[-18])/0.04*100" End With のようにWithで括る( . が重要)などして明示的に指定してあげると大丈夫だと思います。

lemon567
質問者

補足

ありがとうございます!! 非常に困っていていましたので、ずっと待っていました。 オブジェクトの指定がされていなかったみたいです。  Worksheets("Sheet1") ).Select  となっていて、  いきなり、Range・・・  だったのがいけなかったのでしょうか。 解決できるか実施してみます。

関連するQ&A