Você vai querer re-rolar para cada monstro (linha) assim:
Sub Fill()
Dim Roll(1 To 8) As Variant
Dim i As Integer
i = Range("A3").End(xlDown).Row
For j = 3 To i
Roll(1) = Int((10 - 1 + 1) * Rnd + 1) + Range("E2").Value 'Initiative
Roll(2) = Int((20 - 1 + 1) * Rnd + 1) - Range("F2").Value 'Attack
Roll(3) = Int(((Range("G2").Value) - 1 + 1) * Rnd + 1) + Range("H2").Value 'Damage
Roll(7) = Range("B2").Value
Roll(4) = Range("D2").Value
Roll(5) = Range("I2").Value
Roll(6) = Range("J2").Value
Roll(8) = Range("C2").Value
Cells(j, 2) = Roll(1)
Cells(j, 3) = Roll(2)
Cells(j, 4) = Roll(3)
Cells(j, 5) = Roll(4)
Cells(j, 6) = Roll(5)
Cells(j, 7) = Roll(6)
Cells(j, 8) = Roll(7)
Next
End Sub
Então, para cada linha, ela preenche a matriz e a atribui a cada coluna, conforme você define.