VBA - Double conditions avec Else
Résolu
Peter133
-
Pierre133 -
Pierre133 -
Bonjour,
Je suis tout nouveau en programmation VBA et je me demande comment ajouter une deuxième condition à mes lignes de code. Voici ma partie de Code :
' Identifier le Tier
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
strCleCodeTier = "SGDP"
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If
J'aimerais donc insérer sous le premier If quelque chose qui ressemblerait à :
If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
strCleCodeTier = "SGDP"
À noter que le chiffre 993815 est noté en texte dans ma BD Excel.
Peut-être quelqu'un a déjà posé une question semblable je vous demande d'exsucer ma répétition si c'est le cas, mais je n'arrive pas a trouver réponse à ma question.
Merci à tous et Bonne journée!
Peter
Je suis tout nouveau en programmation VBA et je me demande comment ajouter une deuxième condition à mes lignes de code. Voici ma partie de Code :
' Identifier le Tier
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
strCleCodeTier = "SGDP"
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If
J'aimerais donc insérer sous le premier If quelque chose qui ressemblerait à :
If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
strCleCodeTier = "SGDP"
À noter que le chiffre 993815 est noté en texte dans ma BD Excel.
Peut-être quelqu'un a déjà posé une question semblable je vous demande d'exsucer ma répétition si c'est le cas, mais je n'arrive pas a trouver réponse à ma question.
Merci à tous et Bonne journée!
Peter
7 réponses
-
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
. strCleCodeTier = "SGDP"
Else
.
. If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
. . strCleCodeTier = "SGDP"
. Else
. . Select Case Mid$(strCodeAdhesion, 1, 1)
. . . Case "3": strCleCodeTier = "SFHD"
. . . Case "4": strCleCodeTier = "SFHD"
. . . Case "P": strCleCodeTier = "FABD"
. . . Case Else: strCleCodeTier = "N/A"
. . End Select
. End If
.
End If
J'ai utilisé des points pour relier les différentes parties du code, pour que tu comprennes la portée de chaque code.
Fait moi le retour! Bne CHANCE!!!!!!!!!!!!!! -
bonjour
Si j'ai bien compris tu cherche quelque chose com ca ?
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
strCleCodeTier = "SGDP"
else
strCleCodeTier = "SGDP"
end if
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If -
Bonjour Moiced59 et merci de ta réponse rapide.
En fait la condition que je veux ajouter après le premier If est :
If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
strCleCodeTier = "FABD"
(Dsl j'écris "SGDP" dans mon premier message au lieu de "FABD")
Donc un assigner code tier différent de la première condition.
Est-ce que je peux substituer le 2e strCleCodeTier = "SGDP" par strCleCodeTier = "FABD" seulement?
Merci encore! -
plus com ca alors :
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" and Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then
strCleCodeTier = "SGDP"
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Rebonjour!
En fait je pensais plustôt à quelque chose comme ceci :
' Identifier le Tier
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
strCleCodeTier = "SGDP"
ElIf .Cells(lngLigne, mlngCOL_TI_TRANSITACTUEL).Value = "90993815" Then
strCleCodeTier = "FABD"
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If
Mais ça ne semble pas fonctionner...
Merci beaucoup! -
If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then
strCleCodeTier = "SGDP"
Else
Select Case Mid$(strCodeAdhesion, 1, 1)
Case "3": strCleCodeTier = "SFHD"
Case "4": strCleCodeTier = "SFHD"
Case "P": strCleCodeTier = "FABD"
Case Else: strCleCodeTier = "N/A"
End Select
End If -
Bonjour,
Un IF mal placer..If .Cells(lngLigne, mlngCOL_TI_CODEADHESION).Value = "NAPE" Then If .Cells(lngLigne, mlngCOL_TI_TRANSIT).Value = "993815" Then strCleCodeTier = "SGDP" End If Else Select Case Mid$(strCodeAdhesion, 1, 1) Case "3": strCleCodeTier = "SFHD" Case "4": strCleCodeTier = "SFHD" Case "P": strCleCodeTier = "FABD" Case Else: strCleCodeTier = "N/A" End Select End If
Ça correspond à ce que tu explique.
A+