cs_Pierre77
Messages postés8Date d'inscriptionjeudi 25 août 2005StatutMembreDernière intervention 5 décembre 2006
-
25 août 2005 à 12:08
sacha1435
Messages postés94Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention12 octobre 2005
-
26 août 2005 à 11:28
Bonjour à tous
J'ai un petit probleme avec ce bout de code:
For i = 1 To 10
'si la valeur de la cellule est différente à la valeur de JE1_A1
If ActiveCell.Offset(i, 0).Value <> JE1_A1.Value Then
'alors je met cette valeur dans la liste JE1_B1
'JE1_B1.AddItem i
If i = 1 Then
JE1_B1.AddItem Sheets("Nom").Range("C2")
ElseIf i = 2 Then
JE1_B1.AddItem Sheets("Nom").Range("C3")
ElseIf i = 3 Then
JE1_B1.AddItem Sheets("Nom").Range("C4")
ElseIf i = 4 Then
JE1_B1.AddItem Sheets("Nom").Range("C5")
ElseIf i = 5 Then
JE1_B1.AddItem Sheets("Nom").Range("C6")
ElseIf i = 6 Then
JE1_B1.AddItem Sheets("Nom").Range("C7")
ElseIf i = 7 Then
JE1_B1.AddItem Sheets("Nom").Range("C8")
ElseIf i = 8 Then
JE1_B1.AddItem Sheets("Nom").Range("C9")
ElseIf i = 9 Then
JE1_B1.AddItem Sheets("Nom").Range("C10")
ElseIf i = 10 Then
JE1_B1.AddItem Sheets("Nom").Range("C11")
End If
End If
Next i
le probleme vient de mon 1er IF.
Je viens en fait comparer une valeur (qui se trouve etre le nom et le prenom d'une personne, donc du text) dans une liste se trouvant sur une feuille Excel avec une valeur que je rentre grace à un combobox se rapportant à cette liste.
Hors quand la valeur est identique ma condition ne fonctionne pas et elle considere que ces 2 valeurs ne le sont pas.
Est ce que quelqu'un aurait une solution à mon probleme.
Merci d'avance de votre aide
Pierre
PS: Je peux vous fournir un fichier pour plus de comprehention.
Tuning Max
Messages postés314Date d'inscriptionmercredi 15 juin 2005StatutMembreDernière intervention31 août 20061 25 août 2005 à 12:37
Je ne suis pas sûr d'avoir bien compris ton problème, mais peut être quand modifiant ton code comme ci-dessous, ça marchera mieux.
**********************************************
Dim Valeur1 As String, Valeur2 as string
For i = 1 To 10
Valeur1 = ActiveCell.Offset(i, 0).Value
Valeur2 = JE1_A1.Value
'si la valeur de la cellule est différente à la valeur de JE1_A1
If Not Valeur1 = Valeur2 Then
'alors je met cette valeur dans la liste JE1_B1
'JE1_B1.AddItem i
If i = 1 Then
JE1_B1.AddItem Sheets("Nom").Range("C2")
ElseIf i = 2 Then
JE1_B1.AddItem Sheets("Nom").Range("C3")
ElseIf i = 3 Then
JE1_B1.AddItem Sheets("Nom").Range("C4")
ElseIf i = 4 Then
JE1_B1.AddItem Sheets("Nom").Range("C5")
ElseIf i = 5 Then
JE1_B1.AddItem Sheets("Nom").Range("C6")
ElseIf i = 6 Then
JE1_B1.AddItem Sheets("Nom").Range("C7")
ElseIf i = 7 Then
JE1_B1.AddItem Sheets("Nom").Range("C8")
ElseIf i = 8 Then
JE1_B1.AddItem Sheets("Nom").Range("C9")
ElseIf i = 9 Then
JE1_B1.AddItem Sheets("Nom").Range("C10")
ElseIf i = 10 Then
JE1_B1.AddItem Sheets("Nom").Range("C11")
End If
End If
Next i
***********************************************
cs_Pierre77
Messages postés8Date d'inscriptionjeudi 25 août 2005StatutMembreDernière intervention 5 décembre 2006 25 août 2005 à 12:45
Bonjour Tuning Max
Je te remercie pour ta reponse car je viens de faire l'essai et ca ma l'air de bien fonctionner, je vais pousser un peu plus loin dans ce sens.
cs_Pierre77
Messages postés8Date d'inscriptionjeudi 25 août 2005StatutMembreDernière intervention 5 décembre 2006 25 août 2005 à 12:45
Bonjour Tuning Max
Je te remercie pour ta reponse car je viens de faire l'essai et ca ma l'air de bien fonctionner, je vais pousser un peu plus loin dans ce sens.
sacha1435
Messages postés94Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention12 octobre 20052 26 août 2005 à 11:28
Salut,
Les fonctions Ucase : toute la chaine de texte est mise en majuscule; Lcase l'inverse tout en minuscule.
Je le dis car j'ai eu des soucis avec un code qui reprenait des nombres en format "String" sans ce Lcase j'avais une erreure dans un test, cela retournai un "False" au lieu de "True".
Mais dans l'aide Vb tu trouveras toutes les info concernant ces fonctions