Вложенная логарифм IF c неверен. В настоящее время, если номер столбца не равен 3, он выходит из if, а 10 никогда не проверяется. Используйте ElseIf. И потяните другой чек на свой, если.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim selectedNA As Variant
selectedNA = Target.Value
On Error GoTo safeout
Application.EnableEvents = False
Dim selectedNum As Variant
If Target.Column = 3 Then
selectedNum = Application.VLookup(selectedNA, Worksheets("Risk Dropdowns").Range("B3:C30"), 2, False)
ElseIf Target.Column = 10 Then
selectedNum = Application.VLookup(selectedNA, Worksheets("Risk Dropdowns").Range("E3:F30"), 2, False)
End If
If Not selectedNum Is Nothing Then
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
safeout:
Application.EnableEvents = True
End Sub