URGENT: liste deroulante excel
Fermé
sakalyn
-
12 juin 2008 à 11:41
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 - 16 juin 2008 à 14:41
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 - 16 juin 2008 à 14:41
5 réponses
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
12 juin 2008 à 12:59
12 juin 2008 à 12:59
bonjour
ta description correspond à l'utilisation des filtres automatiques.
Inscrit en 1ère ligne le libellé des données (ex A1 --> code client , ...)
Sélectionne A1 et va dans le menu Données --> Filtrer --> Filtre automatique
Ton problème est ainsi résolu (sauf si ta base possède plus de 1000 lignes car les options de filtre sont limitées)
à plus
ta description correspond à l'utilisation des filtres automatiques.
Inscrit en 1ère ligne le libellé des données (ex A1 --> code client , ...)
Sélectionne A1 et va dans le menu Données --> Filtrer --> Filtre automatique
Ton problème est ainsi résolu (sauf si ta base possède plus de 1000 lignes car les options de filtre sont limitées)
à plus
arf j'ai déjà un filtre, j'ai du mal exprimer mon problème.
bon on laisse tomber l'idée de la correspondance "code client" avec "nom client".
en fait, ce que je voudrais, c'est:
lorsque je crée une ligne avec un nom client existant, cela me propose uniquement les références client enregistrées
exemple: dans l'exemple écrit précédemment, j'ai Mr dupont, Mme laroche et Mr martin qui ont déjà commandé chez moi.
ce que je voudrais: si je rentre une nouvelle commande sous le nom de Mr martin, la colonne C doit me proposer uniquement "R4" ou "R5".
En gros, si je fixe Mr martin sur une nouvelle ligne (ex: B7), il faut que la liste déroulante en C7 me propose soit R4, soit R5, et exclue r1,r2,r3 (qui ne correspondent pas à Mr martin).
suis-je clair? j'en ai pas l'impression :'(
merci
bon on laisse tomber l'idée de la correspondance "code client" avec "nom client".
en fait, ce que je voudrais, c'est:
lorsque je crée une ligne avec un nom client existant, cela me propose uniquement les références client enregistrées
exemple: dans l'exemple écrit précédemment, j'ai Mr dupont, Mme laroche et Mr martin qui ont déjà commandé chez moi.
ce que je voudrais: si je rentre une nouvelle commande sous le nom de Mr martin, la colonne C doit me proposer uniquement "R4" ou "R5".
En gros, si je fixe Mr martin sur une nouvelle ligne (ex: B7), il faut que la liste déroulante en C7 me propose soit R4, soit R5, et exclue r1,r2,r3 (qui ne correspondent pas à Mr martin).
suis-je clair? j'en ai pas l'impression :'(
merci
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
13 juin 2008 à 09:04
13 juin 2008 à 09:04
bonjour
voici une première version non finalisée. Seule les 2 premières colonnes sont fonctionnelles.
https://www.cjoint.com/?gnjd7b6EW5
suite la semaine prochaine si cela te conviens
à plus
voici une première version non finalisée. Seule les 2 premières colonnes sont fonctionnelles.
https://www.cjoint.com/?gnjd7b6EW5
suite la semaine prochaine si cela te conviens
à plus
chtilou
Messages postés
1696
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
30 avril 2012
523
13 juin 2008 à 09:59
13 juin 2008 à 09:59
Bonjour.
Regarde ici post 3 et 8.
A ton écoute.
Cordialement.
Regarde ici post 3 et 8.
A ton écoute.
Cordialement.
Bonjour chtilou, LePierre, le forum
merci pour vos réponses.
En fait j'ai réussi à contourner le problème avec des fonctions "=Indirect" (un peu long et ennuyeux)
Mon souhait maintenant:
lorsque je sélectionne un nom client dans ma liste déroulante pour une nouvelle ligne, cela me mette directement le bon code client en A
exemple:
en B7 je choisit Mme laroche, il me faudrait une fonction qui inscrive "002" en A7
encore merci pour votre aide (enfin surtout celui de scorpio pour le moment :D)
merci pour vos réponses.
En fait j'ai réussi à contourner le problème avec des fonctions "=Indirect" (un peu long et ennuyeux)
Mon souhait maintenant:
lorsque je sélectionne un nom client dans ma liste déroulante pour une nouvelle ligne, cela me mette directement le bon code client en A
exemple:
en B7 je choisit Mme laroche, il me faudrait une fonction qui inscrive "002" en A7
encore merci pour votre aide (enfin surtout celui de scorpio pour le moment :D)
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
13 juin 2008 à 17:21
13 juin 2008 à 17:21
Bonsoir
un petit nouveau sur la ligne.
Ce que vous cherchez semble pouvoir être résolu avec une formule RECHERCHEV
Si vos données de base sont dans un tableau, mettons par exemple nom des clients en colonne A et code en colonne B, sur Feuil,lignes utilisées de 1à00:
sur une autre feuille le tableau à remplir:
En colonne A nom des clients à partir de A2
En colonne B les codes à trouver
En B2 la formule à descendre:
=SI(A2="";"";(RECHERCHEV(A2;Feuil1!A1:B100;2;0)
ca devrait suffire
(recherchev cherche dans la 1° colonne du champ et ressort la correspondance dans ma colonne indiquée par son N° dans le champ (2 dans l'exemple)
CRDLMNT
un petit nouveau sur la ligne.
Ce que vous cherchez semble pouvoir être résolu avec une formule RECHERCHEV
Si vos données de base sont dans un tableau, mettons par exemple nom des clients en colonne A et code en colonne B, sur Feuil,lignes utilisées de 1à00:
sur une autre feuille le tableau à remplir:
En colonne A nom des clients à partir de A2
En colonne B les codes à trouver
En B2 la formule à descendre:
=SI(A2="";"";(RECHERCHEV(A2;Feuil1!A1:B100;2;0)
ca devrait suffire
(recherchev cherche dans la 1° colonne du champ et ressort la correspondance dans ma colonne indiquée par son N° dans le champ (2 dans l'exemple)
CRDLMNT
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
13 juin 2008 à 17:32
13 juin 2008 à 17:32
Re
Je complète:
La solution précédente exigeant que le nom du client soit dans la première colonne du champ, ce qui n'est peut être pas votre cas, je vous en propose une autre sur l'exemple suivant:
Données de base Feuil1, ligne 1 à 100 colonne A à F /code client en colonne B / nom client en colonne C:
La formule sur B2 feuil2!
=INDEX(Feuil1!;A1:F100;EQUIV(A2;Feuil1!C1:C100;0);2)
cette formule
dans la partie INDEX, sélectionne le champ de données
dans la partie EQUIV, dans l'ordre
_Enregistre la valeur à chercher
_Sélectionne la colonne du champ où elle doit la trouver
_Explique par un code à Excel la façon de chercher (ça c'est le 0)
_Donne le n° de colonne du champ ou il faut trouver la valeur correspondante (la partie ;2) en fin de formule soit colonne B)
L'ensemble est ajustable à n'importe quelles colonnes du champ sous réserve que la hauteur des champs (N° de lignes)et colonnes soient les mêmes dans EQUIV et INDEX
Bien entendu, vous pouvez nommer les champs pour éviter les inscriptions de limites et de feuille dans les formules.
C'est plus simple et plus clair
CRDLMNT
_
Je complète:
La solution précédente exigeant que le nom du client soit dans la première colonne du champ, ce qui n'est peut être pas votre cas, je vous en propose une autre sur l'exemple suivant:
Données de base Feuil1, ligne 1 à 100 colonne A à F /code client en colonne B / nom client en colonne C:
La formule sur B2 feuil2!
=INDEX(Feuil1!;A1:F100;EQUIV(A2;Feuil1!C1:C100;0);2)
cette formule
dans la partie INDEX, sélectionne le champ de données
dans la partie EQUIV, dans l'ordre
_Enregistre la valeur à chercher
_Sélectionne la colonne du champ où elle doit la trouver
_Explique par un code à Excel la façon de chercher (ça c'est le 0)
_Donne le n° de colonne du champ ou il faut trouver la valeur correspondante (la partie ;2) en fin de formule soit colonne B)
L'ensemble est ajustable à n'importe quelles colonnes du champ sous réserve que la hauteur des champs (N° de lignes)et colonnes soient les mêmes dans EQUIV et INDEX
Bien entendu, vous pouvez nommer les champs pour éviter les inscriptions de limites et de feuille dans les formules.
C'est plus simple et plus clair
CRDLMNT
_
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
14 juin 2008 à 21:02
14 juin 2008 à 21:02
bonjour
pour répondre au souhait :
voici un code fonctionnel qu'il faudra améliorer (gestion des références à réaliser en cas d'ajout)
https://www.cjoint.com/?gova1vqrhx
à plus
pour répondre au souhait :
lorsque je sélectionne un nom client dans ma liste déroulante pour une nouvelle ligne, cela me mette directement le bon code client en A
voici un code fonctionnel qu'il faudra améliorer (gestion des références à réaliser en cas d'ajout)
https://www.cjoint.com/?gova1vqrhx
à plus
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
>
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
15 juin 2008 à 10:16
15 juin 2008 à 10:16
bonjour
voici une nouvelle version qui annule et remplace la précédente : https://www.cjoint.com/?gpkqehXNtx
j'espère que cela conviendra
à plus
voici une nouvelle version qui annule et remplace la précédente : https://www.cjoint.com/?gpkqehXNtx
j'espère que cela conviendra
à plus
sakalyn
>
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
16 juin 2008 à 10:30
16 juin 2008 à 10:30
bonjour,
cette macro est parfaite. Maintenant, comment puis-je l'adapter à ma base de données (plus complète)? Est-il possible de copier ta macro dans ma base? merci de m'indiquer comment procéder, je suis un newbie :p
cordialement
cette macro est parfaite. Maintenant, comment puis-je l'adapter à ma base de données (plus complète)? Est-il possible de copier ta macro dans ma base? merci de m'indiquer comment procéder, je suis un newbie :p
cordialement
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
>
sakalyn
16 juin 2008 à 14:41
16 juin 2008 à 14:41
bonjour
Le plus simple pour toi et de copier tes données dans le fichier ci joint : https://www.cjoint.com/?gqoMTBCWAB
(j'ai corrigé quelques bugs) car il y a du code dans chaque feuille.
Commence par effacer les données de l'onglet "BaseDonnées"
Ensuite va mettre à jour l'onglet "Référence" avec tes nouvelles données.
(Lorsque tu quittes cet onglet, il y a mise à jour automatique des références)
Maintenant, tu peux copier tes données dans l'onglet "BaseDonnées".
Ensuite viens sur l'onglet "Référence" et reviens sur l'onglet "BaseDonnées" pour refaire la mise à jour des listes déroulantes en colonnes A et B.
Dis moi si tu rencontre des problèmes
à plus
Le plus simple pour toi et de copier tes données dans le fichier ci joint : https://www.cjoint.com/?gqoMTBCWAB
(j'ai corrigé quelques bugs) car il y a du code dans chaque feuille.
Commence par effacer les données de l'onglet "BaseDonnées"
Ensuite va mettre à jour l'onglet "Référence" avec tes nouvelles données.
(Lorsque tu quittes cet onglet, il y a mise à jour automatique des références)
Maintenant, tu peux copier tes données dans l'onglet "BaseDonnées".
Ensuite viens sur l'onglet "Référence" et reviens sur l'onglet "BaseDonnées" pour refaire la mise à jour des listes déroulantes en colonnes A et B.
Dis moi si tu rencontre des problèmes
à plus