根据同一工作表的另一列的引用输入列中的值

时间:2015-08-05 11:42:54

标签: vba excel-vba excel

嗨我在将值输入到具有条件的列中并且引用其他2个或更多列以确定使用VBA的另一列的输入时遇到问题。例如,有3列称为RAG成本(C),RAG资源(R)和RAG利益(B)。这3列将使用VBA确定名为Overall RAG的列中的输入值。 例如,如果列(C)或列(B)包含值“R”,则整个RAG状态将在相应行中输入为“A”。我尝试使用if else语句,但它似乎不起作用。 为了更清楚,这就是一个例子:如果RAG成本(C)或RAG资源(R)VALUES =“R”则整体RAG状态=“A”。

1 个答案:

答案 0 :(得分:2)

你不需要vba,你可以写一个像

这样的简单公式
=IF(ISERROR(MATCH("R",B2:D2,0)),"","A")

如果您想要代码,请尝试使用

Sub rgb()
Dim lstrow As Long
Dim i As Long
Dim LastCol As Long
Dim j As Long

lstrow = Range("B" & Sheets("Sheet1").Rows.Count).End(xlUp).Row
LastCol = Sheets("Sheet1").Cells(1, Sheets("Sheet1").Columns.Count).End(xlToLeft).Column
For i = 2 To lstrow
    For j = 2 To LastCol
        If ActiveSheet.Cells(i, j).Value = "R" Then
            Range("A" & i).Value = "A"
        End If
    Next j
Next i

End Sub