J'ai fait une condition pour éviter un doublon
( 01 )
If CBCodePostalClient.Value <> Range("donnees!C2").Value Then
msgBox ("donnee abs")
Else
msgBox ("value is in list")
end if
SI je tape 78000, qui se trouve déjà dans ma liste
condition ( 01 ) je devrais avoir le message "value in the list"
or j'obtiens msgBox ("donnee abs")
Que ce soit une conditon d'égalité ou d'inégalité j'obtiens toujours
msgBox ("donnee abs")
Comment éviter les doublons des mêmes données dans 1 liste
déroulante???
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Starwing
Bonjour Julie,
Une autre solution envisageable, serait que tu fasses une extraction sans doublon avec un filtre élaboré. Par la suite, utilise la liste que tu as extraite comme donnée source pour ta liste déroulante.
Starwing
Bonjour Julie,
Une autre solution envisageable, serait que tu fasses une extraction sans
doublon avec un filtre élaboré. Par la suite, utilise la liste que tu as
extraite comme donnée source pour ta liste déroulante.
Une autre solution envisageable, serait que tu fasses une extraction sans doublon avec un filtre élaboré. Par la suite, utilise la liste que tu as extraite comme donnée source pour ta liste déroulante.
Starwing
AV
Pour éviter la saisie de doublons en C:C : Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If zz.Column <> 3 Or zz = "" Then Exit Sub Set C = [C:C].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
Pour éviter la saisie de doublons en C:C :
Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If zz.Column <> 3 Or zz = "" Then Exit Sub
Set C = [C:C].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
SendKeys "{F2}+{HOME}"
End If
End Sub
Pour éviter la saisie de doublons en C:C : Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If zz.Column <> 3 Or zz = "" Then Exit Sub Set C = [C:C].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
CBCodePostalClient.Value est de type string ou char Range("donnees!C2").Value est de type integer ou int
donc la condition
If CBCodePostalClient.Value <> Range("donnees!C2").Value Then msgBox ("donnee abs") Else msgBox ("value is in list") End if
ne pourra jamais être évaluée . je dois convertir le tout en string ou integer Je vais regarder l'aide plus en profondeur pour trouver une solution
dans mon useform on initialize CBCodePostalClient.Value = "donnees!C2"
L'extraction de doublon ne change en rien mon problème car dans mon Combo CBCodePostalClient s'affiche les doublons pourtant masqués dans la liste
JULIE
Starwing
Re Bonsoir Julie,
L'extraction de doublon ne change en rien mon problème car dans mon Combo CBCodePostalClient s'affiche les doublons pourtant masqués dans la liste
En fait, le résultat final que tu aimerais obtenir c'est quoi? Que le ComboBox de ton UserForm se remplisse des données de ta colonne C mais sans les doublons?
Starwing
Re Bonsoir Julie,
L'extraction de doublon ne change en rien mon problème
car dans mon Combo CBCodePostalClient s'affiche les doublons
pourtant masqués dans la liste
En fait, le résultat final que tu aimerais obtenir c'est quoi?
Que le ComboBox de ton UserForm se remplisse des données de ta colonne C
mais sans les doublons?
L'extraction de doublon ne change en rien mon problème car dans mon Combo CBCodePostalClient s'affiche les doublons pourtant masqués dans la liste
En fait, le résultat final que tu aimerais obtenir c'est quoi? Que le ComboBox de ton UserForm se remplisse des données de ta colonne C mais sans les doublons?
' Ajouter un nouveau code postal If CBCodepostal = CStr(CPList) Then msgBox ("value is in list" + CBCodepostal) Else msgBox ("donnee abs de la liste" + CBCodepostal) end if
' Ajouter un nouveau code postal
If CBCodepostal = CStr(CPList) Then
msgBox ("value is in list" + CBCodepostal)
Else
msgBox ("donnee abs de la liste" + CBCodepostal)
end if
' Ajouter un nouveau code postal If CBCodepostal = CStr(CPList) Then msgBox ("value is in list" + CBCodepostal) Else msgBox ("donnee abs de la liste" + CBCodepostal) end if