为VBA Excel范围内的每个单元格设置偏移值

时间:2013-08-14 13:32:52

标签: vba excel-vba excel

我正在尝试将值与某个范围内的每个单元格进行比较。一旦匹配,我想将另一个变量设置为旧的偏移3列的值。

For Each i In Worksheets("SFDC Input").Range("D2:D20").Cells
    If ProductFamily = i Then
        i.Offset(0, -3).Value = ID
    End If
Next

ProductFamily是我与i相比的价值。我希望ID成为价值持有者。

1 个答案:

答案 0 :(得分:11)

看起来您的作业(=)是向后的。您将i.Offset(0, -3).Value设置为ID,而不是将ID设置为该值。

尝试以下方法:

ID = i.Offset(0, -3).Value

来自MSDN

  

=运算符将其右侧的值赋给变量或   左边的财产。