Bonjour a tous

Sous vba en excel je souhaite creer une fonction , c'est la suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Function Hs(T, Dir, H)
    If 5 <= T < 7 Then
 
        If 180 <= Dir < 195 Then
            Hs = 0.7522 * H - 0.0166
 
                ElseIf 195 <= Dir < 210 Then
                    Hs = 0.858 * H - 0.0469
 
                    ElseIf 210 <= Dir < 225 Then
                        Hs = 0.8467 * H - 0.0338
 
                            ElseIf 225 <= Dir < 240 Then
                                Hs = 0.7822 * H - 0.0094
 
                                ElseIf 225 <= Dir < 240 Then
                                    Hs = 0.7822 * H - 0.0094
 
                                    ElseIf 225 <= Dir < 240 Then
                                        Hs = 0.6564 * H + 0.0133
 
                                          ElseIf 240 <= Dir < 270 Then
                                            Hs = 0.5767 * H + 0.0314
 
        End If
            End If
 
End Function
Mon probléme est que cette fonction ne fonctionne que pour la première boucle elle ne prend pas en compte les autres. Avez vous une idée d'ou sa pourrais provenir svp?