VB: If ... plusieurs conditions

Résolu
Bonjour,
Je voudrais avoir de l'aide sur visual basic logiciel que je viens juste de commencer d'utiliser.
Je voudrais savoir comment faire pour pouvoir faire plusieurs conditions If.
Içi le sujet est simple : je voudrais faire afficher "Cap Nord Est" " Cap Nord Ouest" "Cap Sud Est" "Cap Sud Ouest" celons la valeur d'un angle.
Voilà l'essai que j'ai réalisé:
If Route > 0 And Route < 90 Then
Worksheets("feuil1").Range("H27").Value = "Nord Est"
End If
If Route > 90 And Route < 180 Then
Worksheets("feuil1").Range("H28").Value = "Nord Ouest"
End If
If Route > 180 And Route < 270 Then
Worksheets("feuil1").Range("H29").Value = "Sud Ouest"
End If
If Route > 270 And Route < 380 Then
Worksheets("feuil1").Range("H30").Value = "Sud Est"
End If

Malheureusement celà ne fonctionne pas :(((
Je m'explique : Si l'angle est compris entre 0° et 90° le programme m'affiche bien "Nord Est" mais pour les autres valeurs rien ne s'affiche ...
PS: Il s'agit d'un programme pour calculer la distance et le cap pour une route Loxodromique.

Merci de bien vouloir m'accorder votre temps ^^

2 réponses

  1. Contributeur
    Ca ne dit pas ce qu'il y a DANS ta variable route teste la, l'erreur principale vient de là.
    Suivant ton code, et s'il y a 91 ou 181 ou 271 ?? c'est où qui vont se mettre !!!
    Et pour le code..
        With Sheets("feuil1") 
            If Route > 270 Then 
                .Range("H30").Value = "Sud Est" 
            ElseIf Route > 180 Then 
                .Range("H29").Value = "Sud Ouest" 
            ElseIf Route > 90 Then 
                .Range("H28").Value = "Nord Ouest" 
            Else 
                .Range("H27").Value = "Nord Est" 
            End If 
        End With
    Serait un peu plus adéquat.
    ou, variante...
        With Sheets("feuil1")
            Select Case Route
            Case Is > 270: .Range("H30").Value = "Sud Est"
            Case Is > 180: .Range("H29").Value = "Sud Ouest"
            Case Is > 90: .Range("H28").Value = "Nord Ouest"
            Case Else: .Range("H27").Value = "Nord Est"
            End Select
        End With

    A+

    Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
    Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
    1. Merci D'avoir pris du temps pour moi Sa fonctionne =)