循环遍历范围,如果满足条件则设置值

时间:2015-01-06 18:29:50

标签: excel loops if-statement for-loop

我搜索了堆栈,但无法找到类似于我的问题。所以这是我的问题:

我想编写一个评估单元格B2的简单宏。

  • 如果B2有一个值,我希望宏将另一个工作表中的值(例如:工作表2,单元格A1,表示“Award4455”)粘贴到单元格C2中;
  • 如果B2为空,我希望宏将C2留空。

然后我想用相同的条件评估B3(填充或不填充C3,取决于B3是否有值或是空白)。我希望公式循环7行(B2:B8),填充(或不填充)C列中的相应单元格。

这是我正在尝试的内容(失败 - 我不断收到各种错误消息):

For i = 2 To 8

    Dim Award As String

    Award = Sheets("Sheet2").Range("A1").Value

    If Len(Range(i, "B")) = 0 Then
        Range(i, "C") = Award

    End If

Next i

1 个答案:

答案 0 :(得分:1)

我们:

  1. Dim 奖励拉出循环
  2. 修复范围语句
  3. 的语法


    Sub dural()
        Dim Award As String
        Award = Sheets("Sheet2").Range("A1").Text
        For i = 2 To 8
            If Len(Range("B" & i)) = 0 Then
                Range("C" & i) = Award
            End If
        Next i
    End Sub