OVH Cloud OVH Cloud

Afficher sans doublons dans cellule déroulante ?

6 réponses
Avatar
Tatane
Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cellule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mais dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fichier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4

6 réponses

Avatar
dre
Salut,

Pour obtenir des listes de validation sans doublons je ne connais d'autre
méthode que de créer un tableau identique sans doublons et d'établir les
listes sur base de ce nouveau tableau.

La formule en D16 :
=SOMMEPROD((A2:A9¡6)*(B2:B9±6)*(C2:C9Á6)*(E2:E9á6)*D2:D9)

Â+




Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cellule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mais dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fichier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4


Avatar
JB
Pour créer une liste sans doublons:

http://cjoint.com/?jvqZF6lNIB

En matriciel:
=INDEX(DESIGNATION_Vis;PETITE.VALEUR(SI(EQUIV(DESIGNATION_Vis;DESIGNATION _Vis;0)=LIGNE(INDIRECT("1:"&LIGNES(DESIGNATION_Vis)));EQUIV(DESIGNATION_V is;DESIGNATION_Vis;0);"");LIGNE(INDIRECT("1:"&LIGNES(DESIGNATION_Vis)))))

Fonction Perso matricielle:

=SansDoublonsTrié(A2:A9)

Function SansDoublonsTrié(champ As Range)
Dim temp()
j = 1
ReDim temp(1 To j)
For i = 1 To champ.Count
témoin = Not IsError(Application.Match(champ(i), temp, 0))
If Not témoin And champ(i) <> "" Then
ReDim Preserve temp(1 To j)
temp(j) = champ(i)
j = j + 1
End If
Next i
Call tri(temp, 1, j - 1)
SansDoublonsTrié = Application.Transpose(temp)
End Function

Sub tri(a, gauc, droi) ' Quick sort
ref = a((gauc + droi) 2)
g = gauc: d = droi
Do
Do While a(g) < ref: g = g + 1: Loop
Do While ref < a(d): d = d - 1: Loop
If g <= d Then
temp = a(g): a(g) = a(d): a(d) = temp
g = g + 1: d = d - 1
End If
Loop While g <= d
If g < droi Then Call tri(a, g, droi)
If gauc < d Then Call tri(a, gauc, d)
End Sub

JB



Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cell ule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mai s dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fi chier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4


Avatar
Tatane
Merci *dre* mais il me faut la valeur de la cellule et non la somme (ca va me
servir pour autre chose).
J'ai bien tenté quelque chose mais j'impose 1 seule condition et je n'arrive
pas à imposer mes 4 conditions.

ÞCALER(A1;EQUIV(A16;DESIGNATION_Vis;0);1)


Salut,

Pour obtenir des listes de validation sans doublons je ne connais d'autre
méthode que de créer un tableau identique sans doublons et d'établir les
listes sur base de ce nouveau tableau.

La formule en D16 :
=SOMMEPROD((A2:A9¡6)*(B2:B9±6)*(C2:C9Á6)*(E2:E9á6)*D2:D9)

Â+




Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cellule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mais dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fichier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4




Avatar
Tatane
Merci *JB*,

J'ai pas tout compris comment ca marche mais je vais essayer de le refaire
pour mes colonnes B. C. et E. en espérant que ta "Function SansDoublonsTrié"
fonctionne pour tout et non pas uniquement pour la colonne A. parceque après
il faudra que je me batte avec mon histoire de 4 conditions pour déterminer
une valeur.

Précision: Je vais essayer plus tard ce soir et je te tiens au courant demain.


Pour créer une liste sans doublons:

http://cjoint.com/?jvqZF6lNIB

En matriciel:
=INDEX(DESIGNATION_Vis;PETITE.VALEUR(SI(EQUIV(DESIGNATION_Vis;DESIGNATION_Vis;0)=LIGNE(INDIRECT("1:"&LIGNES(DESIGNATION_Vis)));EQUIV(DESIGNATION_Vis;DESIGNATION_Vis;0);"");LIGNE(INDIRECT("1:"&LIGNES(DESIGNATION_Vis)))))

Fonction Perso matricielle:

=SansDoublonsTrié(A2:A9)

Function SansDoublonsTrié(champ As Range)
Dim temp()
j = 1
ReDim temp(1 To j)
For i = 1 To champ.Count
témoin = Not IsError(Application.Match(champ(i), temp, 0))
If Not témoin And champ(i) <> "" Then
ReDim Preserve temp(1 To j)
temp(j) = champ(i)
j = j + 1
End If
Next i
Call tri(temp, 1, j - 1)
SansDoublonsTrié = Application.Transpose(temp)
End Function

Sub tri(a, gauc, droi) ' Quick sort
ref = a((gauc + droi) 2)
g = gauc: d = droi
Do
Do While a(g) < ref: g = g + 1: Loop
Do While ref < a(d): d = d - 1: Loop
If g <= d Then
temp = a(g): a(g) = a(d): a(d) = temp
g = g + 1: d = d - 1
End If
Loop While g <= d
If g < droi Then Call tri(a, g, droi)
If gauc < d Then Call tri(a, gauc, d)
End Sub

JB



Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cellule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mais dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fichier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4






Avatar
Starwing
Bonsoir Tatane,

il faudra que je me batte avec mon histoire de 4 conditions pour déterminer
une valeur.
Pourquoi se battre? Essaie ceci:


Validation matricielle par CTRL + Shift + Entrée
=INDEX(D2:D9;EQUIV(A16&B16&C16&E16;A2:A9&B2:B9&C2:C9&E2:E9;0))

Starwing

Avatar
Tatane
Bonjour,

Merci à tous pour vos précieux renseignements.
-----


Bonjour,

Je suis encore paumé, Je cherche à enlever des doublons dans une cellule
avec liste déroulante (ne faire apparaître qu'un seul exemplaire d'une
valeur).

J'ai cherché sur le forum à "Liste", "Sans doublon", "Extraction" mais dans
tout ce que j'ai trouvé, je n'ai pas réussi à l'adapter pour mon fichier.

De plus, si quelqu'un a une solution pour afficher une valeur en fonction de
4 critères ... Je suis preneur.

Quelqu'un peut-il m'aider ? Par avance, merci.

Si ce n'est pas clair, voici mon fichier: http://cjoint.com/?jvqiSakUM4