Excel 2016 - liste déroulante sur une cellule d'une autre feuil

Fermé
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021 - 6 oct. 2019 à 10:44
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 - 17 oct. 2019 à 22:43
Bonjour,

je cherche à faire des listes déroulantes sur certaines cellules de la feuil2 en relation avec feuil1
J'ai bien trouvé des tutos et autres exemples mais je n'arrive pas à les appliquer à mon sujet.
ex.
- feuil1 qui est un plan comptable - un compte = 5 chiffres + 1 libellé. les 2 premiers chiffres = le compte principal et les 3 derniers le sous-compte. (2 en A7, A8....A400 et 3 en B7, B8...B400). le libellé en C12,C13...C400)
- feuil2 est une feuille de saisie.
quand je saisis en feuil2 je souhaite voir apparaitre :
- en D12, D13...la liste des comptes principaux ( 2 premiers chiffres) + le libellé des cptes principaux de la feuil1
- en E12, E13....la listes des sous comptes + leur libellé de la feuil1

J'espère avoir été assez clair.

Cordialement

Glaieul
A voir également:

31 réponses

via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
11 oct. 2019 à 16:21
Bonjour glaieul

Je rentre du boulot ☺

1) Une liste déroulante ne peut comme le message d'erreur te le rappelle ne faire référence qu'à une colonne ou une ligne
Si par ex tu as des noms en col A et des prénoms en col B tu ne peux pas créer une liste déroulante basée sur A:B affichant Nom + prénom
Pour cela il faut passer par une 3eme colonne C dans laquelle tu concatènes pour chaque ligne Nom & Prénom et tu bases ta liste déroulante sur cette colonne

2) Affichage de la formule dans la cellule
Pour afficher la formule au lieu de la valeur Ruban Formules > Afficher les formules. Pour faire l'inverse : afficher les valeurs à la place des formules, il suffit de cliquer à nouveau sur le bouton. mais ça doit le faire pour toutes les formules
Il se peut aussi que ta cellule soit en Format Texte, à vérifier
Il peut s'agir enfin d'un bug, cela m'est arrivé une fois et je n'ai pu m'en sortir qu'en recréant une feuille

3) Pour te déplacer dans la formule tu surlignes les texte à la souris et tu déplaces la souris vers la droite (ou vers la gauche)

Le fichier qui est le plus abouti et qui évite de passer par plusieurs colonnes intermédiaires est néanmoins le 3

Cdlmnt
Via

0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
13 oct. 2019 à 09:41
Bonjour VIA,
merci pour tous ces retours très intéressants.
j'ai néanmoins quelques interrogations qui subsistent et comme je suis tenace....pas de bol c'est tombé sur toi :-)
je joints un fichier :https://www.cjoint.com/c/IJnhNKulbtz

pour bien comprendre tes formules et ne pas polluer les lignes du tableau par erreur, j'ai testé différentes choses en E2 F2 G2 et en K2 L2 M2.
(j'ai cré un lib_5 dans le gestionnaire des noms).

1) je ne comprends pas pourquoi ce que j'ai pu faire en K2 L2 M2 je ne réussis pas à le faire en E2 F2 G2 ni en E12 F12 G12. (j'ai pourtant réussi 1 fois mais je ne sais plus comment)
----> message d'erreur :"la liste source doit être délimitée ou faire référence à une seule ligne ou colonne".
(je ne change que lib_2 en lib_5).

Par contre en déplaçant les cellules K2 L2 M2 ça fonctionne !!!

2) j'ai remarqué aussi dans gestionnaire des noms, que lib_5, lib_4, lib_3 passent de façon aléatoire et les 3 en mm tps de $L6:$M6 en $L2:$M2...ou $L16:$M16) alors que lib ou lib_ 2 ne bougent jamais.
(lib_5, lib_4, lib_2 ont tous été créés en $L6:$M6)

merci d'avance pour ce que tu feras.

Glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
13 oct. 2019 à 13:31
Bonjour Glaieul

1) ='Plan Comptable Général Commenté'!$L4:$M4 n’est pas valable car fait référence à 2 colonnes au lieu d'une seule

2) Les références doivent bouger car par ex lib-4 a comme référence ='Plan Comptable Général Commenté'!$M4, la colonne est bloquée par le $ mais pas la ligne ce devrait être ='Plan Comptable Général Commenté'!$M$4

Cdlmnt
Via

0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
13 oct. 2019 à 17:43
re,
merci encore une fois, de t'être penché sur le fichier.

1) ok pour 1 ligne 1 colonne tout ca..., mais pourquoi ca marche dans M2 de l'onglet grand livre journal ou la liste déroulante m'affiche le N°+ libellé ? (avec lib_5 en validation de données)

et qu'en G2 toutes choses étant égales par ailleurs ça ne marche pas ? en G2 je ne ne change que lib_5 à la place de lib_2 dans validation de données.


2) oui ...mais c'est bien sur...!!! quand on a la tête dans le guidon on ne voit pas les choses les plus évidentes. merci je modifie cela

J'espère que mes explications sont assez précises et espère que tu pourras éclairer mes lanternes.

cordialement

glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
Modifié le 13 oct. 2019 à 19:28
Re

Re,

je n'ai pas plus d'explications que toi pourquoi cela fonctionne une fois!
Cela ne devrait même pas !

Si tu tiens à faire afficher dans la liste déroulante le code et le libellé il faut passer par une colonne de concaténation pour la liste déroulante puis par une macro pour ne récupérer que le libellé, voir exemple ici Liste avec 2 colonnes :
http://boisgontierjacques.free.fr/pages_site/donneesvalidation.htm#Liste2Colonnes

Dans ton cas la macro serait
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect([G12:G999], Target) Is Nothing And Target.Count = 1 Then
    Application.EnableEvents = False
    Target = Right(Target, Len(Target) - 6)
    Application.EnableEvents = True
  End If
End Sub

Cdlmnt
Via



0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
13 oct. 2019 à 19:58
re,

A OK un bug de excel... pas de bol que ce soit tombé sur moi!!!
j'ai passé pas mal d'heures à m'arracher les cheveux et à grrrrrrrr .....
je le garde tout de même sous le coude car en copiant ou en déplaçant les cellules ça fonctionne.

oui merci j'avais vu ce site très complet mais il faut un peu...beaucoup de connaissance pour décrypter et comprendre ces formules.
Par tes explications et tes modifications dans mes fichiers, je comprends mieux le raisonnement "liste déroulante" et je vais pouvoir me pencher à nouveau sur ce site. Cela reste tout de même encore compliqué.

merci encore

Cordialement

Glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
13 oct. 2019 à 22:54
Voilà ce que donne la méthode de Boisgontier appliquée à ton fichier en créant donc une nouvelle colonne N au Plan comptable sur laquelle baser la liste déroulante et en appliquant une macro à la feuille Grand livre, ce n'est pas trop compliqué :
https://mon-partage.fr/f/N7TVgp1C/

Cdlmnt
Via
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
14 oct. 2019 à 10:43
Bonjour VIA et encore merci pour ce retour.

J'avais essayé une fois cette formule avant de demander de l'aide sur le site. je l'avais utilisée telle quelle sans succès (mais en modifiant g12 quand même :-) ). Avec les modifications que tu y apportes je comprends (à moitié) pourquoi ça ne marchait pas !!.... y a du boulot !!

Merci encore ...et la je me dis que excel est quand un outil super génial quand on le maîtrise.

un plaisir d'apprendre de nouvelles choses sans se prendre la tête.

juste pour info, il y a 1 an environ, j'ai eu l'occasion d'être conseillé par un autre contributeur. Au fil des conversations on s'est aperçu qu'on habitait à 20 km de distance :-) ...on a fini par prendre un café ensemble !!! voilà pour la petite histoire.

merci encore

glaieuls29
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
14 oct. 2019 à 14:37
re,
je reviens vers toi car je n'arrive pas à modifier l'ordre de l'affichage.
je m'explique.

si je voulais avoir en 1er le choix avec la liste deroulante et apres le N° de compte d'imputation

D E F
12 21 TERRAIN 21110


je pensais qu'il n'y avait qu'à modifier le code VBA....mais mes différentes modif ne marchent pas. J'ai testé un peu tout (du right, du left ...).
Est-ce bien plus compliqué que cela ou ce ne sont que mes codes VBA qui sont faux.

Cdt

glaieuls
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
14 oct. 2019 à 16:35
re

1) il faut modifier la formule en colonne N du Plan pour inverser
=L7&" "&M7 devenant =M7&" "&L7

2) dans la macro associée à la feuille Grand livre modifier la ligne
Target = Right(Target, Len(Target) - 6)
en
Target = Left(Target, Len(Target) - 6)
puisque désormais il faut prendre à gauche et non plus à droite de la chaine de caractères un nombre de caractère égal à la longueur (Len) de la chaîne -6 puisqu'il faut exclure l'espace et les 5 chiffres

Cdlmnt
Via
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
14 oct. 2019 à 18:24
merci.
Je me suis mal exprimé (on inverse F et G. F deviendrait le libellé et G deviendrait le code d'imputation 5 chiffres.)
je crois avoir fait tout ça bien comme il faut ...et bien plus encore mais je n'arrive pas à ce que je voudrais.
La colonne G reste vide, et la colonne F reste N concaténée.

je me suis peut être mal expliqué. ce que je souhaiterais
D = ne bouge pas et reste la colonne ou l'on saisi les 2 premiers chiffres du code
F= deviendrait la colonne avec la liste déroulante "N concaténée" (tout pareil que G actuellement)
G = deviendrait la colonne d'affichage du code d'imputation. (tout pareil que F actuellement)
on inverse l'information affichée dans G et F.
(Je trouve en effet plus logique d'avoir le choix du libellé immédiatement après la saisie en D des 2 chiffres)

j'adapterai la mise en page selon que l'on réussit ou pas cette modification.

J'essaie d'être explicite mais j'ai peur de te noyer avec tout ce "blabla"

Cordialement
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
14 oct. 2019 à 22:51
Comme cela alors ?
https://mon-partage.fr/f/0mRqoOte/

Mais quid de la colonne E qui est vide ?

Cdlmnt
Via
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
15 oct. 2019 à 06:06
Merci !!
j'avais pourtant tout mis pareil. (modifié le VBA, la nouvelle colonne G imputation et tout et tout...)
la seule chose, j'ai oublié les $ dans la colonne G...
il doit y avoir un petit bug quelque part parce que je viens d'essayer sur une sauvegarde et la ça fonctionne.

Ce qui me fait penser à un petit bug c'est que ton dernier fichier ne fonctionne plus (la case G reste vide) si ton avant dernier fichier est resté ouvert pour pouvoir comparer facilement les différentes modifs.

je m'en veux de n'avoir pas essayé sur une autre sauvegarde car j'aurais évité de t'enquiquiner pour si peu.

2) la colonne E ? je la supprimerai ou je la déplacerai pour l'affecter à une autre fonction...(n° de facture....).
Cela posera-t- il un problème dans le fonctionnement général ?
Je pensais que les formules s'adapteraient au nouvel ordre alphabétique si je la déplaçais ou la supprimais.

Naïveté de ma part ?

Cordialement.

Glaieul
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
15 oct. 2019 à 07:35
re,
il n'a pas fallu longtemps pour que je revienne demander de l'aide !!!
he oui!! dans l'onglet récap. comptes général tout ce qui fait référence à la colonne F je dois le modifier en G !!
existerait-il une macro pour le faire à ma place et que j'effacerai après que le travail soit fait ?
Ca serait trop facile lol !!

cdt

glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
15 oct. 2019 à 19:43
Bonjour

la colonne G comporte une formule INDEX qui renvoie bien le bon n°
la liste déroulante en col G devient inutile il faut la supprimer
on pourrait aussi dans la macro qui renvoie le libellé renvoyer le code complet en G et plus de formules en col G

Quant à l'onglet Recap chez moi les formules ont bien l'air de s'être mises à jour et j'ai les même chiffres en retour que dans les fichiers précédents apparemment
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
15 oct. 2019 à 21:46
re,
la colonne G je l'ai supprimée et recrée une colonne J pour y indiquer un N° de facture...(je la fusionnerai peut être avec la colonne libelle pièces ou même je la supprimerais peut être).

tu voudrais remplacer supprimer la formule "=sierreur(index....) par une macro c'est bien ça ?
ca je ne maitrise pas du tout. je vais me pencher sur tes différents fichiers et formules.

Je n'ai pas des centaines de lignes donc j'ai modifié les formules de recap. car elles n'avaient pas bougées.

Tout à l'air de fonctionner. je vais peut être créer une macro avec bouton dans chaque onglet pour pouvoir faire une impression rapide de chaque onglet. ça pourrait être intéressant qu'en penses tu ?

merci

Glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
15 oct. 2019 à 23:10
oui puisque la macro existe déjà pour extraire le libellé on peut dans la même macro extraire le n° et le faire inscrire en col G ou ailleurs pour avoir le n° complet qui n'existe pas ailleurs
mais si tu as supprimé la col G ?!

Un bouton d'impression peut être utile c sur
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
16 oct. 2019 à 06:22
re,
En fait pour être exacte, je n'ai pas supprimé mais seulement décalé la colonne vide (la "E" pour toi) pour l'insérer entre la colonne "libelle Pièces" et la colonne Débit.
l'ordre des colonnes a donc changé. il y a un décalage entre la colonne D "Recherche Imputation" et la colonne K "débit".
- colonnes A, B, C, D, n'ont pas bougé, elles ont toujours le mm titres.
mais la colonne :
- E est devenue ----> "Libellé de compte"
- F est devenue ----> "imputation complete"
- G est devenue ----> "N° cpte Analytique"
- H est devenue ----> " libellé Analytique"
- I est devenue ------> "libellé Pièce"
- J est devenue -----> colonne vide (l'ancienne colonne E)----> je la supprimerai peut être plus tard.
le reste des colonnes n'ont pas bougé
- K reste comme avant ----> "Débit"
- L reste comme avant ----> "Crédit"
.....

Un petit truc tout bête.
les colonnes "banques" devraient être masquées. la colonne RB* sert uniquement au pointage pour les rapprochements bancaires.

1) comment avoir un "retour automatique en colonne A ligne suivante" après avoir validé la colonne L "crédit" ? par une macro je suppose ?
j'ai bien trouvé ici et la des formules mais chaque cas est un cas particulier et je n'arrive pas à les adapter à mon fichier.
2) comment sécuriser les différentes formules des différents onglets ?

cordialement

glaieul
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
16 oct. 2019 à 07:58
Bonjour

On va pouvoir régler les deux en une seule fois avec la protection de la feuille

1) Par défaut en principe toutes les cellules sont verrouillées donc sélectionne les colonnes A à G puis clic droit Format de cellules -onglet Protection décocher Verrouillé
puis selectionne I à L et même procédure pour déverrouiller ces colonnes
La colonne H et les colonnes M et suivantes avec des formules restent verrouillées
2) Protéger la feuille : dans le ruban Revison - Proteger la feuille - décoche Selectionner les cellules verrouillées, ne laisser coché que Selectionner cellules déverrouillées
Valider (tu peux aussi mettre un mot de passe mais attention à ne pas l'oublier !)
Les formules sont maintenant protégées
3) Pour retourner en début de tableau aller dans Fichier - Options (tout en bas) -- Options avancées -
Deplacer la sélection après validation - Sens : choisir Droite

Cdlmnt
Via

0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
17 oct. 2019 à 11:43
re,
Une journée tranquille.....et je suis de retour lol

merci ca marche super bien!!!! même si lors de certains essais j'ai un message "cette action ne peut pas être appliquée à une cellule fusionnée".

J'ai même réussi (assez difficilement faut te l'avouer) à mettre une liste déroulante dans la colonne "libellé analytique" et ça m'affiche le code.... dans la bonne colonne. :-)

Cependant, y a une chose que je comprends pas :
je précise que j'ai fait ce test sans avoir protégé les colonnes et les feuilles.

ex :
colonne "libellé de compte". cette colonne ne sera pas protégée.
si je supprime "terrain" par la touche "suppr" du clavier----> plus rien ne marche pour les lignes suivantes.

D'ailleurs un message d'erreur de windows visual basic arrive :
erreur d'execution "5" -argument ou appel de procédure incorrect
choix entre : FIN ou DEBOGAGE

Peux tu me dire si on peut résoudre ce problème et faire "redemarrer le VBA ?
Faut il bloquer ces lignes contre toutes erreurs de manipulation ? est-ce possible car cette colonne ne sera pas protégée.

Merci d'avance

Glaieuls
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
17 oct. 2019 à 13:33
Bonjour

Exact, comme la macro scinde la valeur entrée pour ne retenir que le libellé elle bug si la cellule est vide
Pour pallier cela complète la 1ere ligne de la macro par la partie en gras
If Not Intersect([F12:F999], Target) Is Nothing And Target.Count = 1 And Target.Value <> "" Then

Cdlmnt
Via
0
glaieuls29 Messages postés 174 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 5 mai 2021
17 oct. 2019 à 18:27
Merci beaucoup pour ton aide et ta disponibilité !!!

ce petit programme me servira de support pour essayer de mieux maitriser les vba ou autre validation de données....

tu es bluffant !!! cette dernière petite amélioration que je qualifierai de "petite touche du chef" pour quasiment clore le sujet.

et comme on dit par chez nous

Kenavo (au revoir en breton)

glaieuls
0
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 2 734
Modifié le 17 oct. 2019 à 22:43
De rien ☺

J'avais compris kenavo

Bonne suite et bon vent ☺
Et n'hésites pas à me resolliciter si nécessaire

Cdlmnt
Via



0