Sub locso()
Dim rng As Range
For Each rng In ActiveSheet.Range("E9:E20")
If rng.Value >= 4 Then
rng.Offset(, 4).Value = 0.38
ElseIf rng.Value >= 2 Then
rng.Offset(, 4).Value = 1
Else
rng.Offset(, 4).Value = 6.4
End If
Next
End Sub
Cái gì có thể viết thành công thức thì khi chuyển sang VBA ta cũng viết y chang vậy là gọn nhất (khỏi cần For)Bạn chỉnh lại chút code là được thôi mà bạn.
M ko biểt về lập trình nhiều lắm. Thử nghịch chút thôi! bạn tham khảo nhé!!!
Bonne chance!!!Mã:Sub locso() Dim rng As Range For Each rng In ActiveSheet.Range("E9:E20") If rng.Value >= 4 Then rng.Offset(, 4).Value = 0.38 ElseIf rng.Value >= 2 Then rng.Offset(, 4).Value = 1 Else rng.Offset(, 4).Value = 6.4 End If Next End Sub
Sub locso()
With Range("E9:E20")
.Offset(, 1).Value = "=IF(RC[-1]>=4,0.38,IF(RC[-1]>=2,1,6.4))"
.Value = .Value
End With
End Sub