使用VBA Express将两个不同excel表中的两个范围相乘(这有什么问题?)

时间:2012-07-06 17:33:22

标签: vb.net excel

以下是什么问题? (级别:初学者)我想添加两个不同excel表格中两个范围相乘后得到的答案。

Dim iRowCounter As Integer
For iRowCounter = 3 To 47

' C3 to C47 from oSheet6
' C22 to C66 from oSheet5

osheet7.Range("A" & iRowCounter - 1).Value = (oSheet5.Range("C" & iRowCounter+19).Value * oSheet6.Range("C" & iRowCounter).Value) + (oSheet5.Range("C" & iRowCounter+20).Value * oSheet6.Range("C" & iRowCounter+1).Value)

提前致谢

1 个答案:

答案 0 :(得分:0)

您不能将aginst中的所有值都相互重叠,您需要循环遍历该范围以执行操作。 所以而不是:

    oRng7.Value = oRng5.Value * oRng7.Value

试试这个:

 Dim iRowCounter as integer
 For iRowCounter = 3 to 47 then 
      osheet7.Range("B" & iRowCounter -1).value = oSheet5.Range("C" & iRowCounter).value * oSheet6.Range("C" & iRowCounter).value
 next iRowCounter 

更新

您的初始公式是:

Sheet7 = Sheet5 * Sheet7

根据您的评论,我将代码更改为:

Sheet7 = Sheet5 * Sheet6