[Excel] problème de condition If ElseIf
Résolu
LeGhe
-
eriiic Messages postés 25847 Statut Contributeur -
eriiic Messages postés 25847 Statut Contributeur -
Bonjour,
Je cherche à remplir une cellule colonne M avec une valeur en fonction de la colonne N :
Mais tout est rempli avec 100G.
Pourquoi ?
Merci !
Je cherche à remplir une cellule colonne M avec une valeur en fonction de la colonne N :
Columns("N:N").Select
Selection.NumberFormat = "0"
For li = lifinz3 To 2 Step -1
If 0 < OAma.Range("N" & li).Value < 100 Then
Range("M" & li) = "100G"
ElseIf 101 < OAma.Range("N" & li).Value < 250 Then
Range("M" & li) = "250G"
ElseIf 251 < OAma.Range("N" & li).Value < 500 Then
Range("M" & li) = "500G"
ElseIf 501 < OAma.Range("N" & li).Value < 1000 Then
Range("M" & li) = "1000G"
ElseIf 1001 < OAma.Range("N" & li).Value < 2000 Then
Range("M" & li) = "2000G"
ElseIf 2001 < OAma.Range("N" & li).Value < 3000 Then
Range("M" & li) = "3000G"
End If
Next li
Mais tout est rempli avec 100G.
Pourquoi ?
Merci !
A voir également:
- Elseif excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel trier par ordre croissant chiffre - Guide
3 réponses
Bonjour,
comment veux-tu qu'on te réponde sans voir ce qu'il y a réellement dans N ?
Déposer le fichier xls sur cjoint.com et coller ici le lien fourni.
eric
comment veux-tu qu'on te réponde sans voir ce qu'il y a réellement dans N ?
Déposer le fichier xls sur cjoint.com et coller ici le lien fourni.
eric
bonjour, je pense que tu veux plutôt écrire:
(0 < OAma.Range("N" & li).Value) and (OAma.Range("N" & li).Value < 100)
suggestion:
option explicit dim vl as single Columns("N:N").Select Selection.NumberFormat = "0" For li = lifinz3 To 2 Step -1 vl = OAma.Range("N" & li).Value If 0 < vl then if vl < 100 Then Range("M" & li) = "100G" ElseIf vl < 250 Then Range("M" & li) = "250G" ElseIf vl < 500 Then Range("M" & li) = "500G" ElseIf vl < 1000 Then Range("M" & li) = "1000G" ElseIf vl < 2000 Then Range("M" & li) = "2000G" ElseIf vl < 3000 Then Range("M" & li) = "3000G" End If end if Next li
ben N est un nombre entier, non ?