IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Liste dynamique sans doublons et sans VBA [XL-2013]


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2015
    Messages : 80
    Points : 45
    Points
    45
    Par défaut Liste dynamique sans doublons et sans VBA
    Bonjour à tous !

    Je fais un travail pour un stage qui récupère une base de données et la transfère sous Excel

    Je dois ensuite pouvoir créer des listes de choix en function du contenu des lignes SANS VBA. (Ou alors le stricte minimum, donc pour mon probleme je ne peux pas en utiliser)

    Je m'explique :

    J'ai une liste déroulante pour chaque colonne, et je dois pouvoir choisir grâce à cette liste, une des valeurs contenues dans la colonne.

    Comme je ne peux pas prévoir la taille de la colonne (car les bases peuvent être modifiées à tout moment, et on utilise pas toujours la meme base de donnée donc je ne peux pas prévoir la taille de la liste)

    J'utilise donc un principe assez simple, par exemple pour faire une liste de la colonne B dynamiquement, je prend de B2 jusqu'a la dernière cellule non vide grâce à cette function :

    ="B2:B"&NB.SI(B:B;"<>")+1 Exemple : Dans la cellule G2

    (NB.SI de B:B <> "" renvoi le nombre de case non vide, mais on lui rajoute +1 pour ne pas prendre en compte le titre de la colonne (contenu dans B1)

    Ensuite je n'ai plus qu'à faire Données>Validation de données, dans critère de validation sous l'onglet Options je met : Autoriser : Liste, ignorer si vide ainsi que liste déroulante dans cellule cochée, puis dans source je met : =INDIRECT(G2) (la cellule où il y a ma formule plus haut)

    J'obtiens donc une liste dynamique de tout ce qu'il y a dans ma colonne de B, le probleme est qu'il y a des doublons.

    J'ai regardé beaucoup de techniques, mais tout ce que j'ai trouvé n'etait pas dynamique (il fallait rajouter des trucs à la main) ou alors il fallait trier les listes par ordre alphabétiques et comparer les cellules 2 par 2, sauf que comme c'est des table de données, elles sont triées par ID et je ne peux pas me permettre de les trier autrement car cela "chamboulerait" l'architecture de la table actuelle.

    Je ne sais pas trop comment m'y prendre, je sais que sans VBA et sans tri, demander qqch de dynamique est trop compliqué, mais pour mon stage je suis oblige de respecter ces critères.

    Connaissez vous des solutions ?

    Merci de votre attention,

    Cordialement,

    Maxime OZENNE.

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    À part une filtre avancé sans doublon, je ne vois pas vraiment comment on peut y arriver.
    Ça inclut donc un peu de manuel...
    MPi²

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2015
    Messages : 80
    Points : 45
    Points
    45
    Par défaut
    Bonjour,

    En fait juste avant que mon programme SANS VBA s'applique sur la Base de donnée, j'ai un programme dans lequel je peux utiliser du VBA qui sert à convertir les bdd en feuille Excel.
    A partir de ce programme, j'applique une mise en forme de tableau à la feuille excel générée, qui fait qu'elle a, via mon code, la première ligne filtrable.

    Ce que mon chef de stage aimerait c'est que je décale la première ligne, d'environ 5 lignes, et qu'au dessus de la table il y ait un ruban d'information qui récapitule les filtres choisis.

    Un peu comme ici :

    Nom : RubanRecherche.png
Affichages : 2509
Taille : 15,1 Ko

    Ce qu'on pensait faire, c'est qu'à la place de mettre des filtres sur la première ligne (peu ergonomique), on faisait des listes dynamiques pour chaque colonne dans une espèce de ruban au dessus des tables (comme sur le screen) qui permettait de résumer les filtres choisis tout en lui permettant d'en appliquer.
    Après, une fois impression de la feuille, cela rendait beaucoup mieux avec le bandeau car ça récapitulait bien la recherche effectuée pour l'impression.

    Mais bon il y a peut etre d'autres solutions, est-ce que tu penses que c'est possible d'appliquer les filtres sur la première ligne de chaque colonne, puis de récupéré la valeurs de ces filtres dans un ruban au dessus de la dite table ?

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Est-ce que tu as pensé à utiliser Ruban Données > Supprimer les doublons
    Certes c'est manuel mais c'est juste deux clics.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2015
    Messages : 80
    Points : 45
    Points
    45
    Par défaut
    Non ça n'aurait pas été automatisé du coup...

    Mais j'ai réussi à lui vendre l'userform en haut de page, ainsi je peux faire ce que je veux pour faire des listes déroulantes sans doublons en VBA !

    Merci quand meme pour votre aide :p

  6. #6
    Membre expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 869
    Points : 3 442
    Points
    3 442
    Billets dans le blog
    1
    Par défaut
    J'arrive après la bataille mais c'est possible d'voir une liste sans doublon à partir d'une liste avec doublon

    Grace ... au tableau croisé dynamique avec une seule donnée auquel on enlève les totaux et on modifie la cellule entête

    avec en plus ce que j'explique dans mon blog

    on peut donc le faire dynamiquement sans VBA

    A+
    Ils ne savaient pas que c'était impossible ... du coup ils l'ont fait (Mark Twain)

    n'oubliez pas de si les messages vous aide ou sont pertinents et de mettre quand cela est !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Filtres sans doublons et Combobox // VBA
    Par jonleboss44 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/05/2014, 13h11
  2. [XL-2010] A propos des listes de validation conditionnelles et sans doublon
    Par Invité dans le forum Excel
    Réponses: 0
    Dernier message: 26/01/2011, 13h29
  3. [XL-2003] Listes de validation conditionnelles et sans doublon
    Par loliv77 dans le forum Excel
    Réponses: 1
    Dernier message: 01/12/2009, 15h26
  4. Réponses: 8
    Dernier message: 07/03/2009, 22h56
  5. Comment remplir une liste déroulante avec une macro sans doublons
    Par alex.a dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 14/06/2007, 18h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo