
Excel 2000のマクロで教えてください。
あるセルに関数をいれるマクロを設定しております。
変数% = 8
Range(Cells(126, 20), Cells(155, 19 + 2 *
変数%)).FormulaR1C1 =
"=(RC[-18]-R[-1]C[-18])/0.04*100"
このマクロを走らせると、たまに、
「'Cells'メソッドは失敗しました。'_Global'オブジェクト」
という、エラーがでます。
どういう意味なのでしょうか。
うまくいくときもあるので、よくわかりません。
すみませんが、教えてください。
No.2ベストアンサー
- 回答日時:
#1です。
> Worksheets("Sheet1") ).Selectとなっていて、
> いきなり、Range・・・
> だったのがいけなかったのでしょうか。
この場合 Range より、次に続く Cells に対するオブジェクトの指定が重要だと思っています。
経験上そう感じているだけなので、何故かは説明出来ませんが、、、
この回答への補足
With Worksheets(Sheetname$)
.Range(Cells(126, 20), Cells(155, 19 + _
2 * 変数%)).FormulaR1C1 = _
"=(RC[-18]-R[-1]C[-18])/0.04*100"
End With
として、再実行してみましたが(数式は、若干変更しました)、同様のエラーがでてしまいました。。他に、なにか策はありますでしょうか。
Sheetname$や、変数%には、ちゃんと値が入っているようです。
すみません。"."を見落としていました!
Cellsの前に"."をつけ、実行してみましたところ、うまくいきました!
ありがとうございました。
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で括る( . が重要)などして明示的に指定してあげると大丈夫だと思います。
この回答への補足
ありがとうございます!!
非常に困っていていましたので、ずっと待っていました。
オブジェクトの指定がされていなかったみたいです。
Worksheets("Sheet1") ).Select
となっていて、
いきなり、Range・・・
だったのがいけなかったのでしょうか。
解決できるか実施してみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Worksheets メソッドは失敗しました。のエラー処理のやり方
Visual Basic(VBA)
-
'Cells'メソッドは失敗しました '_Global'オブジェクト
Word(ワード)
-
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
-
4
Access VBA [リモートサーバーがないか使用できる状態ではありません]
Access(アクセス)
-
5
マクロの「Rangeメソッドは失敗しました’Globalオブジェクト」エラーの解決方法について
Excel(エクセル)
-
6
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
7
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
8
ACCESSのVBAにてExcelのシートをコピーしたい
その他(データベース)
-
9
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
10
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
11
On ErrorでエラーNoが0
Visual Basic(VBA)
-
12
Access VBAで行ラベルが定義されていないというエラーが出ます
Access(アクセス)
-
13
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
14
ACCESSでコントロールソースの変更
Access(アクセス)
-
15
AccessVBAで作成したExcelファイルを削除する方法は?
Visual Basic(VBA)
-
16
「#エラー」の回避
Access(アクセス)
-
17
AccessVBAでExcelを起動し、罫線を引きたいのですが、Exc
Visual Basic(VBA)
-
18
アクセスでエラー このフィールドに入力した値が正しくありません
その他(データベース)
-
19
フォームのコントロールのバックカラーの色を変えたい
Visual Basic(VBA)
-
20
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
VBAからPDFファイルにパスワー...
-
VBAで既に開いている別アプリケ...
-
Excelでフィルタをかけると警告...
-
VBA:オートシェイプの線の長...
-
[VBA]CDOメッセージ送信エラー
-
【VB】【エクセル操作】 SaveAs...
-
VBScriptからDLL参照設定したい
-
テキストボックス中の文字列の...
-
AccessVBAで「dim dbs as datab...
-
VBAで Set wb = Sheets(1).Cop...
-
VBAで作成するメール(開封確認...
-
EXCEL VBA オートシェイプナン...
-
エクセルマクロエラー「'Cells'...
-
ExcelVBAでのNZ関数について
-
コンパイルすると「メソッドま...
-
エクセルVBAで配列内に空白デー...
-
ある文字列が全て数字であるか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
テキストボックス中の文字列の...
-
エクセルのVBAの標準モジュール...
-
Excelでフィルタをかけると警告...
-
実行時エラー 3265「要求された...
-
上下の位置揃えについて
-
ExcelVBAでのNZ関数について
-
VBAで既に開いている別アプリケ...
-
VBAで Set wb = Sheets(1).Cop...
-
AccessVBAで「dim dbs as datab...
-
EXCEL VBA オートシェイプナン...
-
オブジェクト変数またはWITHブ...
-
[VBA]CDOメッセージ送信エラー
-
エクセルマクロエラー「'Cells'...
-
findメソッドの変数について
-
オブジェクトが見つかりません
-
ある文字列が全て数字であるか...
-
オブジェクト変数の取得について
-
CreateObjectとGetObjectの違い
おすすめ情報