Traitement des donnees avec la condition if
r4944
Messages postés
122
Date d'inscription
Statut
Membre
Dernière intervention
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Bonjour j'ai de la misére a trouver mon erreur ;
ce code nous permet de remplire la colonne AP de chaque ligne par XX suite a une condition
le problémec'est que j'aurais toujours un XX si la colonne (i,14).value = STU_IIN alors que la colonne AE a une valeur different que
(Completed - Inventory available / Complété - Inventaire disponible) ,
voici mon code :
Bonjour j'ai de la misére a trouver mon erreur ;
ce code nous permet de remplire la colonne AP de chaque ligne par XX suite a une condition
le problémec'est que j'aurais toujours un XX si la colonne (i,14).value = STU_IIN alors que la colonne AE a une valeur different que
(Completed - Inventory available / Complété - Inventaire disponible) ,
voici mon code :
Sub Decision()
Dim cell As Range
Dim i As Integer
Dim j As Integer
For i = 2 To ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
If CStr(ActiveSheet.Cells(i, 31).Value) = "Completed - Appointment made / Complété - Nomination faite" And _
CStr(ActiveSheet.Cells(i, 14).Value) = "AEP" Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_REV" Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_APT" _
Or CStr(ActiveSheet.Cells(i, 14).Value) = "CS_TPD" Or CStr(ActiveSheet.Cells(i, 14).Value) = "DM_ID" Then
ActiveSheet.Cells(i, 42).Value = "XX"
End If
Next i
For j = 2 To ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
If CStr(ActiveSheet.Cells(j, 31).Value) = "Completed - Appointment made / Complété - Nomination faite" And _
CStr(ActiveSheet.Cells(j, 14).Value) = "INA_ACIN" Then
ActiveSheet.Cells(i, 42).Value = "XX"
End If
Next j
end sub
A voir également:
- Traitement des donnees avec la condition if
- Fuite données maif - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Excel cellule couleur si condition texte - Guide
- Trier des données excel - Guide
- Traitement de texte gratuit - Guide
2 réponses
Bonjour,
Il te faut donc, imbriquer tes conditions If. Exemple :
Il te faut donc, imbriquer tes conditions If. Exemple :
For i = 2 To ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row If CStr(ActiveSheet.Cells(i, 31).Value) = "Completed - Appointment made / Complété - Nomination faite" Then If CStr(ActiveSheet.Cells(i, 14).Value) = "AEP" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_REV" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_APT" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CS_TPD" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "DM_ID" Then ActiveSheet.Cells(i, 42).Value = "XX" End If End If Next i
Bonjour,
Pour cela, vous utilisez If ElseIf.... End If
Comme ceci :
Pour cela, vous utilisez If ElseIf.... End If
Comme ceci :
For i = 2 To ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row If CStr(ActiveSheet.Cells(i, 31).Value) = "Completed - Appointment made / Complété - Nomination faite" Then If CStr(ActiveSheet.Cells(i, 14).Value) = "AEP" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_REV" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CMC_APT" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "CS_TPD" _ Or CStr(ActiveSheet.Cells(i, 14).Value) = "DM_ID" Then ActiveSheet.Cells(i, 42).Value = "XX" End If ElseIf CStr(ActiveSheet.Cells(i, 31).Value) = "xxxx" Then 'ici du code si la cellule contient xxxx ElseIf CStr(ActiveSheet.Cells(i, 31).Value) = "YYYYY" Then 'ici du code si la cellule contient YYYYY Else 'ici le code pour tous les autres cas End If Next i