| 
    
     |  | ▼すず さん: >その値を"Sheet2"の"G列"から拾う
 拾うで SUMIF なの?という疑問はありますが・・・
 結果を I8, I9, I10 と次々に出すとして,
 
 Dim ws1 As Worksheet, ws2 As Worksheet, Rmax As Long, i As Long
 Set ws1 = ThisWorkbook.Worksheets("Sheet1")
 Set ws2 = ThisWorkbook.Worksheets("Sheet2")
 Rmax = ws2.Range("D65536").End(xlUp).Row
 i = 8
 Do Until ws1.Range("F" & i) = ""
 ws1.Range("I" & i) = Application.WorksheetFunction. _
 SumIf(ws2.Range("D1:D" & Rmax), ws1.Range("F" & i), ws2.Range("G1:G" & Rmax))
 i = i + 1
 Loop
 
 こういうことですか?
 あえて,Do Until 〜 Loop にしましたが,For Next でもできますよ!
 勉強になりますので作成してみては・・・
 
 |  |