У меня странная проблема. IIf портится, когда я работаю с массивом. Видимо, он проверяет мое утверждение else, хотя оно не активировано. Вот некоторый код, который демонстрирует проблему:
'works
Dim test As String = "bleh"
If values.Length < 6 Then
test = "200"
Else
test = values(5)
End If
'throws indexoutofrange exception
Dim itemLimit As String = IIf(values.Length < 6, "200", values(5))