使用for循环的Excel宏帮助

时间:2014-07-25 10:33:23

标签: excel excel-vba vba

我正在尝试学习excel中的宏。我有更粗糙的边缘(插入if语句和其他方程式到单元格),现在我需要循环的帮助。所以我有一个宏将把以下内容插入一个单元格

单元格(2,31).Formula =" = if(istext(E2),"" Yes"","" No& #34;&#34)

我需要基本上将这个方程式直接插入到50个单元格中,所以我想使用for循环来做到这一点。任何人都可以帮忙解决这个问题,我似乎无法让它发挥作用。范围应从E2到E50。

谢谢!

1 个答案:

答案 0 :(得分:0)

只需遍历所有行:

Dim row As Long
For row = 2 To 50
    Cells(row, 31).Formula = "=IF(ISTEXT(E" & row & "), ""Yes"", ""No"")"
Next

但如果使用R1C1格式的公式,则可以在没有循环的情况下执行此操作,因为无论您在哪一行,R1C1公式都是相同的:

Range(Cells(2, 31), Cells(50, 31)).FormulaR1C1 _
        = "=IF(ISTEXT(RC5), ""Yes"", ""No"")"