设置Excel的VBAmacros来运行一系列线性方程通过从几行variables?

我有一组方程,我希望重复从下一行的每个variables所在的每一列的variables。 我是初学者,所以我的编码可能不会划伤:

Sub Iteration() Dim al, ab, ae As Double Dim as1, as2 As Double 'etc as1 = Range("CG7") as2 = Range("CG8") aA1 = Range("BQ7") 'etc intCounter = 0 For intCounter = 1 To 10000 Let x = ((aN1 * 1000) - (as1 * aA1) + (as2 * aA2)) / (al * fc * ae * ab) Let x2 = ((aN12 * 1000) - (as12 * aA12) + (as22 * aA22)) / (al2 * fc2 * ae2 * ab2) Next Sheets("Sheet1").Range("CJ7").Value = x End Sub 

我已经做了几个variables,我已经设置为相对于每个variables值的范围。 然后对于下一行,我不得不重做整个方程,并重新设置下一行的variables。 有没有办法设置variables(可能与相对单元格引用?),将跳到下一行的单元格为下一个计算? 还要考虑有36行计算和大约9个variables!

如果我正确地理解你,那么这样的事情呢?

 Sub Iteration() Dim al, ab, ae As Double Dim as1, as2 As Double 'etc intCounter = 0 For intCounter = 0 To 10000 as1 = Range("CG7").Offset(intCounter) as2 = Range("CG8").Offset(intCounter) aA1 = Range("BQ7").Offset(intCounter) 'etc Let x = ((aN1 * 1000) - (as1 * aA1) + (as2 * aA2)) / (al * fc * ae * ab) Let x2 = ((aN12 * 1000) - (as12 * aA12) + (as22 * aA22)) / (al2 * fc2 * ae2 * ab2) Next Sheets("Sheet1").Range("CJ7").Value = x End Sub