如果条件是特定单元格中的文本值

时间:2019-05-14 20:08:30

标签: excel vba if-statement

我有两列(“ D”和“ E”),在“ D”列的单元格中,我可以从下拉列表中进行选择。这些选项之一是“ NA”。我想做的是,如果您从下拉列表中选择值“ NA”(例如,在“ D5”中),则在“ E”列中在同一行中的单元格(在这种情况下) ,“ E5”)的值将为“ NA”)。

我尝试使用IF函数,但事实是,还从下拉列表中选择了“ E”列中的单元格。因此,如果我更改单元格“ E”中if函数之后的值,该公式将被删除。

期望的是从列“ D”中读取单元格的代码,对于每个具有文本“ NA”的单元格,将“ NA”放入其旁边的“ E”单元格中。例如,单元格D6具有NA,那么单元格E6必须具有NA。

编辑:这是我编写的代码。我现在要做的就是使其适用于列中的所有单元格。

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)


       Dim celltxt As String

       celltxt = ActiveSheet.Range("D10").Text

       If InStr(1, celltxt, "NA") Then

          ActiveSheet.Range("E10").Value = "NA"

       End If


  End Sub

1 个答案:

答案 0 :(得分:0)

我完成了。

Dim rango As Range

Dim i As Long

Set rango = Range("D:D")

For Each cell In rango

    If cell.Value = "NA" Then

        cell.Offset(0, 1).Value = "NA"

    End If

Next