Excel ajustement automatique d'une plage
Résolu
Shadowshen
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
Shadowshen Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Shadowshen Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je travail actuellement sur un projet et rencontre une petite difficulté avec Excel.
J’ai créé une application qui permet par le biais d’une liste déroulante avec macro d’aller rechercher des informations dans une base de données.
Liste déroulante contenant les noms et prénoms
Macro ; ne fait que insérer des « INDEX » et « SVRECHERCHE » dans différentes cellules
Mon problème concerne le champ de cellules défini et attribué à la liste déroulante. En effet, si par exemple je détermine ce champ entre A3 et A14. Seuls les noms contenus entre ces deux cellules seront affichés. Si quelqu’un ajoute des noms, ils n’y seront pas. Et si je prévois un ajout de noms et que je redéfini mon champ entre A3 et A50 par exemple. Dans ma liste déroulante il y aura un blanc à la suite des noms. Un blanc de 36 lignes.
J’ai rapidement recréé un exemple pour vous montrer en image :
http://www.shadowshen.com/shadexcel1.jpg Screen de la feuille principale avec la liste déroulante
http://www.shadowshen.com/shadexcel2.jpg Screen de la 2e feuille avec la base de données
Afin d’éviter de devoir redéfinir la plage des cellules à utiliser pour la liste déroulante à chaque ajout ou suppression de noms, je cherche un moyen d’automatiser ce processus. (Le programme défini automatiquement la plage de données suivant si les cellules contiennent ou non des données.)
Est-ce possible ? Si oui, comment ? Je remercie infiniment ceux qui prendront le temps de lire ma requête et tenteront d’y répondre.
Cordialement, Shadowshen
Je travail actuellement sur un projet et rencontre une petite difficulté avec Excel.
J’ai créé une application qui permet par le biais d’une liste déroulante avec macro d’aller rechercher des informations dans une base de données.
Liste déroulante contenant les noms et prénoms
Macro ; ne fait que insérer des « INDEX » et « SVRECHERCHE » dans différentes cellules
Mon problème concerne le champ de cellules défini et attribué à la liste déroulante. En effet, si par exemple je détermine ce champ entre A3 et A14. Seuls les noms contenus entre ces deux cellules seront affichés. Si quelqu’un ajoute des noms, ils n’y seront pas. Et si je prévois un ajout de noms et que je redéfini mon champ entre A3 et A50 par exemple. Dans ma liste déroulante il y aura un blanc à la suite des noms. Un blanc de 36 lignes.
J’ai rapidement recréé un exemple pour vous montrer en image :
http://www.shadowshen.com/shadexcel1.jpg Screen de la feuille principale avec la liste déroulante
http://www.shadowshen.com/shadexcel2.jpg Screen de la 2e feuille avec la base de données
Afin d’éviter de devoir redéfinir la plage des cellules à utiliser pour la liste déroulante à chaque ajout ou suppression de noms, je cherche un moyen d’automatiser ce processus. (Le programme défini automatiquement la plage de données suivant si les cellules contiennent ou non des données.)
Est-ce possible ? Si oui, comment ? Je remercie infiniment ceux qui prendront le temps de lire ma requête et tenteront d’y répondre.
Cordialement, Shadowshen
A voir également:
- Excel ajustement automatique d'une plage
- Liste déroulante excel - Guide
- Réponse automatique thunderbird - Guide
- Déplacer une colonne excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
2 réponses
salut Shadowshen, et Bonne Année 2008 !
L'astuce, c'est de définir un nom de cellule qui contienne, non pas une plage de cellules, mais la fonction suivante :
=OFFSET(Sheet1!$A$1;;;COUNTA(Sheet1!$A:$A))
ou en bon français
=DECALER(Sheet1!$A$1;;;NBVAL(Sheet1!$A:$A))
L'astuce figure sur un site que je te recommande, Excelabo.net :
http://www.excelabo.net/excel/listes.php#listesdynamiques
L'astuce, c'est de définir un nom de cellule qui contienne, non pas une plage de cellules, mais la fonction suivante :
=OFFSET(Sheet1!$A$1;;;COUNTA(Sheet1!$A:$A))
ou en bon français
=DECALER(Sheet1!$A$1;;;NBVAL(Sheet1!$A:$A))
L'astuce figure sur un site que je te recommande, Excelabo.net :
http://www.excelabo.net/excel/listes.php#listesdynamiques
Hello Kobaya et Bonne Année 2008 à toi aussi !
Super, ton astuce marche très bien et je t'en remercie infiniement ! Me reste plus qu'a trouver la traduction en allemand (Excel De). Ce ne sera pas trop difficile ;)
Je te remercie également pour le site. Si je rencontre d'autres problèmes je m'y refererai.
Cordiales salutations, Shadowshen
Super, ton astuce marche très bien et je t'en remercie infiniement ! Me reste plus qu'a trouver la traduction en allemand (Excel De). Ce ne sera pas trop difficile ;)
Je te remercie également pour le site. Si je rencontre d'autres problèmes je m'y refererai.
Cordiales salutations, Shadowshen