私はウェブサイト上で登録されていると私は、私は以下の問題(私はVBAでの専門家ではない)にいくつかの助けを得ることができると確信してい..VBA - SUMIFS - インクリメント列 - エラー1004
簡単に言うと、2つのパラメータ(列Aと列G)に基づいて(各行の列Iの)合計量を計算するマクロを実行しています。私はSUMIFS関数を使用していますが、これは1つのセルに有効です。しかし、私はすべての行のためにそれを自動化したいのですが、それは私のためにトリッキーになり..ここ
は、セルI2のために動作するコードです:
Sub quantity_aggregated()
Dim sht As Worksheet, LastRow As Long, i As Integer
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
Set sht = ThisWorkbook.Worksheets("JDE_Greece")
Range("I2").Formula = "=SUMIFS(H:H,G:G,G2,A:A,A2)"
私はそのように維持するが、統合したいですa行2から開始し、最後に入力された行で終了します。以下、いくつかのコードについて
思った(と試み)、異なる3(末端iおよびマクロを閉じをインクリメント、同一である):
For i = 2 To LastRow
'Range("I2").Formula = "=SUMIFS(H:H,G:G,Range(i,7),A:A,Range(i,1)"''
'Range(i, 9).Value = Application.WorksheetFunction.SumIfs(Range("H:H"), Range("G:G"), Range(i, 7), Range("A:A"), Range(i, 1))'
'Cells(i, 9).FormulaR1C1 = "=SUMIFS(H:H,G:G, "'
Next i
End Sub
Iのプロセスを理解するが、それぞれについて、「ありますメソッド全体のオブジェクトの範囲が失敗しました(エラー1004) "がポップアップします。私は、それがアプリケーション、オブジェクトまたは何かを定義することについて何かだと確信していますが、それを解決することはできません。
誰にもアイデアはありますか?それは:)あなたは、単に全体の範囲I
に式を適用することができます
こんにちは、 確かに、これはうまくいきました。これは間違いなく速いです...私はこの単純なことをほとんど忘れてしまっています。ありがとうございました。 しかし、このループがうまくいかない理由について何か手掛かりがありますか?ループを挿入したい場合、単純なコードはどうなるでしょうか(私は練習したいと思います)。 お返事ありがとうございます – Jeofbist3
"@ Jeofbist3はループを使って数式が' SUMIFS(H:H、G:G、G "&i&"、A:A、A "&i&") " –
ニース!!ありがとうございました:) – Jeofbist3