如何减去两个定义范围中的值如下图所示?

时间:2013-10-24 17:50:18

标签: vba excel-vba range subtraction excel

enter image description here

我有以下两个范围

Dim onedl, twodl As Range
Dim lastrow as long

Set oned1 = xl.ThisWorkbook.Sheets(1).Range("C5:C" & lastrow)
Set twod1 = xl.ThisWorkbook.Sheets(1).Range("F5:F" & lastrow)
lastrow = xl.ThisWorkbook.Sheets(1).Cells(Rows.Count, 2).End(xlUp).Row

我可以减去两个范围并计算范围(" I5:I"& lastrow)中的值,例如(twod1 - oned1),以便填充。

1 个答案:

答案 0 :(得分:1)

有了简单的东西,你可以写= F5-C5并拖动,但是VBA:

Range("I5").FormulaR1C1 = "=IF(RC[-3]="""","""",RC[-3]-RC[-6])"
Range("I5").AutoFill Destination:=Range("I5:I" & lastrow), Type:=xlFillDefault

此外,你的“lastrow”声明应该首先出现,否则它将不知道“lastrow”是什么。

编辑:这完全忽略了你正在尝试设置数组的事实(如果那是你想要做的事情)。我想,如果这不是你想要的,请告诉我。