有条件的,我如何自动化操作?
Conditional, How I can automate the operation?
我需要我的代码可以评估几个单元格的值,我不需要为每个答案更改单元格
我希望这个过程是自动的
我尝试使用 for,但它不起作用
Sub Test()
If Range("E5").Value <> "OK" Or Range("F5").Value <> "OK" Or Range("G5").Value <> "OK" Then
Range("h5").Value = "NOT ACEPT"
ElseIf Range("E5").Value = "NOT OK" And Range("F5").Value = "NOT OK" And Range("G5").Value = "NOT OK" Then
Range("H5").Value = "ACEPT"
End If
End Sub
Sub test()
If WorksheetFunction.Or(UCase(Range("E5")) <> "OK", UCase(Range("F5")) <> "OK", UCase(Range("G5")) <> "OK") Then
Range("h5").Value = "NOT ACCEPT"
Else
Range("H5").Value = "ACCEPT"
End If
End Sub
如果你只想制作单元格 H5 "accept" 或 "not accept" 你不需要 vba 你可以只用公式完成它并将它复制到 H 列的最后一个单元格
IF(AND(UPPER(E5)="OK",UPPER(E5)="OK",UPPER(E5)="OK"),"Accept","Not Accept")
如果你需要vba那么修改上面的代码以满足你在H列中多行的要求
Sub test()
Dim lastrow, cell As Range
lastrow = Cells(1048576, 7).End(xlUp).Row
' not fill the formula from H5 to the last row
For Each cell In Range("H5:H" & lastrow)
If WorksheetFunction.Or(UCase(cell.Offset(0, -3)) <> "OK", UCase(cell.Offset(0, -2)) <> "OK", UCase(cell.Offset(0, -1)) <> "OK") Then
cell = "NOT ACCEPT"
Else
cell = "ACCEPT"
End If
Next
End Sub
我需要我的代码可以评估几个单元格的值,我不需要为每个答案更改单元格
我希望这个过程是自动的
我尝试使用 for,但它不起作用
Sub Test()
If Range("E5").Value <> "OK" Or Range("F5").Value <> "OK" Or Range("G5").Value <> "OK" Then
Range("h5").Value = "NOT ACEPT"
ElseIf Range("E5").Value = "NOT OK" And Range("F5").Value = "NOT OK" And Range("G5").Value = "NOT OK" Then
Range("H5").Value = "ACEPT"
End If
End Sub
Sub test()
If WorksheetFunction.Or(UCase(Range("E5")) <> "OK", UCase(Range("F5")) <> "OK", UCase(Range("G5")) <> "OK") Then
Range("h5").Value = "NOT ACCEPT"
Else
Range("H5").Value = "ACCEPT"
End If
End Sub
如果你只想制作单元格 H5 "accept" 或 "not accept" 你不需要 vba 你可以只用公式完成它并将它复制到 H 列的最后一个单元格
IF(AND(UPPER(E5)="OK",UPPER(E5)="OK",UPPER(E5)="OK"),"Accept","Not Accept")
如果你需要vba那么修改上面的代码以满足你在H列中多行的要求
Sub test()
Dim lastrow, cell As Range
lastrow = Cells(1048576, 7).End(xlUp).Row
' not fill the formula from H5 to the last row
For Each cell In Range("H5:H" & lastrow)
If WorksheetFunction.Or(UCase(cell.Offset(0, -3)) <> "OK", UCase(cell.Offset(0, -2)) <> "OK", UCase(cell.Offset(0, -1)) <> "OK") Then
cell = "NOT ACCEPT"
Else
cell = "ACCEPT"
End If
Next
End Sub