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

Macros et VBA Excel Discussion :

Liste déroulante sans ligne vide [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 288
    Par défaut Liste déroulante sans ligne vide
    Bonjour,

    je cherche depuis un bon moment à limiter la partie visible de mes listes de choix aux lignes non vides, sans succès

    j'ai en prévision d'évolution des plages importantes de liste de choix, dans Excel je n'arrive pas à limiter aux lignes non vides, d'autant que c'est la dernière ligne qui est active dans la liste et il faut remonter toutes les lignes blanches pour atteindre les données renseignées

    Je voudrai dans excel ou par macro limiter la liste aux lignes non vides ou autre solution, positionner le ligne active sur la première ligne renseignée de la liste

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par retraite83 Voir le message
    Bonjour,

    Peut-être là, chez Jacques BOISGONTIER : donneesvalidation.htm#SansVide

  3. #3
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Si c'est juste pour ne pas prendre en compte les lignes vides qui se trouvent sous ta liste, tu as la formule :
    =DECALER($A$1;0;0;NBVAL(A:A))
    qui permet une liste dynamique sans prendre en compte les cellules vides sous la liste (ici, liste en colonne A depuis A1)

  4. #4
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 288
    Par défaut
    La solution avec DECALER le semble me convenir, mais je ne vois pas comment l'intégrer

    J'ai dans la cellule J11 dans ma feuille1 une liste définie par

    =Param!$A$2:$A$9

    comment intégrer la formule du genre :

    =DECALER($A$1;0;0;NBVAL(A:A))
    avec la liste déroulante?
    merci de m'éclairer

  5. #5
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 288
    Par défaut
    Merci pour ces docs très intéressantes (riche pour mon niveau…)

    j'ai donc appliqué :

    Les données de ma liste sont de A2 à A30 de la feuille Param

    Dans la cellule où se trouve la liste déroulante j'ai donc entré :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =DECALER(Param!$A$2;0;0;NBVAL($A:$A)-1)
    seule la donnée dans Param$A$2 s'affiche dans ma liste

    J'ai essayé de voir dans la doc de la fonction DECALER, sans resultat

    Autre question : comment faire pour limiter la liste à la plage $A$2 à $A$30

  6. #6
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 288
    Par défaut
    Après de multiples essais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =DECALER(Param!$A$2;0;0;NBVAL($A:$A)-1)
    je n'ai qu'une donnée dans la liste (la première)

    il faudrait en fait quelque chose comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =DECALER(Param!$A$2;0;0;NBVAL(Param!$A:Param!$A)-1)
    mais Excel dit que c'est invalide

    ou encore mieux pour limiter la plage de la liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =DECALER(Param!$A$2;0;0;NBVAL(Param!$A$2:Param!$A$50)-1)
    Mais là aussi Excel dit que c'est invalide

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

Discussions similaires

  1. [XL-2007] Recopier une liste sans lignes vides
    Par filsdepub dans le forum Excel
    Réponses: 3
    Dernier message: 09/12/2014, 11h11
  2. [XL-MAC 2011] Remplissage Zone de liste déroulante sans doublons & non vides via VBA
    Par SuperKiwi dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/03/2014, 20h29
  3. formule pour recopier une liste sans ligne vide
    Par ANGLIQUESOIG dans le forum Excel
    Réponses: 2
    Dernier message: 14/03/2013, 11h13
  4. [XL-2007] Liste déroulante sans vides
    Par apt dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/02/2012, 00h12
  5. Réponses: 2
    Dernier message: 22/09/2009, 17h56

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