Bonjour,
il y a une évaluation du branchemet "vrai" (ici w.Name) , même si la condition est "fausse".
En fait, les 2 conditions sont évaluées.
Ainsi le code suivant platera également.
Sub testIIF()
Dim wk As Workbook
Dim res As String
res = IIf(False, 0, wk.Name)
End Sub
Non, tu n'as pas d'autres solutions que If Then Else ElseIf etc...
D'autant plus que If est plus rapide, plus secure, plus visuel pour un débutant...