Comment afficher le premier élément de la liste déroulante plutôt qu’une cellule vide ?
Les Liste déroulante dans les feuilles Excel constituent une fonctionnalité pratique pour rationaliser et standardiser la saisie de données : les utilisateurs peuvent simplement sélectionner parmi des options prédéfinies plutôt que de saisir manuellement chaque valeur. Toutefois, il arrive parfois qu’en cliquant sur une cellule dotée d’une liste déroulante, la sélection initiale apparaisse vide au lieu du premier élément réel de la liste. Ce problème survient souvent si la liste Données source a été modifiée et que des Lignes vides subsistent à la fin, ou si des éléments situés près de la fin ont été supprimés, ce qui conduit la validation des données à inclure des emplacements vides non souhaités en haut de la liste. Avec des listes longues, devoir constamment faire défiler vers le bas pour passer ces entrées vides et atteindre le premier élément valide peut s’avérer inefficace et frustrant.

Résoudre ce problème améliore non seulement la commodité des utilisateurs, mais permet aussi d’éviter la sélection accidentelle de valeurs vides, susceptibles de compromettre les traitements ou rapports ultérieurs. Dans cet article, découvrez des méthodes pratiques pour garantir que la première entrée de votre liste déroulante s’affiche toujours en haut, éliminant ainsi ces cellules vides inutiles.
Utiliser un tableau Excel comme Plage source
Afficher le premier élément de la liste déroulante au lieu d’une cellule vide avec la fonction Validation des données
Une méthode efficace pour éviter les entrées vides en haut de votre liste déroulante consiste à configurer la validation des données à l’aide d’une formule qui détermine dynamiquement la plage adéquate. Cette approche garantit que seules les cellules remplies de votre liste source sont incluses, même en présence de lignes vides laissées par des suppressions en fin de liste. Idéale pour les utilisateurs qui modifient souvent leur liste source ou qui privilégient une solution simple, basée sur une formule et sans macro.
1. Sélectionnez les cellules dans lesquelles vous souhaitez créer la liste déroulante. Ensuite, rendez-vous dans l’onglet Données du ruban Excel, puis cliquez sur Validation des données > Validation des données. La boîte de dialogue Validation des données s’ouvre, comme illustré ci-dessous :

2. Sous l’onglet Paramètres de la boîte de dialogue Validation des données, définissez Autoriser sur Liste. Dans le champ Source, saisissez cette formule pour référencer dynamiquement uniquement la plage contenant des données réelles :
=DECALER(Feuil3!$A$1;0;0;NBVAL(Feuil3!$A:$A)-1;1)
Remarque : Dans cette formule, Feuil3 désigne la feuille où se trouvent vos données source, et A1 est la cellule de départ de votre liste. Ajustez ces éléments en fonction de la structure de votre feuille. L’utilisation de NBVAL garantit que seules les cellules non vides sont prises en compte à partir de A1. Si votre liste source contient intentionnellement des lignes vides (et pas uniquement à la fin), cette méthode risque de ne pas les exclure entièrement ; conservez donc une liste source contiguë pour obtenir de meilleurs résultats.

3. Cliquez sur OK pour appliquer les paramètres. Désormais, dès que vous cliquerez sur l’une des cellules de liste déroulante configurées, la liste affichera en haut le premier élément réel. Ce comportement persiste même si la source de données évolue, à condition que la plage couvre l’intégralité des éléments de la colonne A et qu’aucune cellule ne soit vide au sein du bloc principal de données. Consultez le résultat ci-dessous :

Astuce : Si vous devez ultérieurement agrandir ou réduire votre liste source, inutile de mettre à jour vos paramètres de validation des données : la formule s’ajuste automatiquement, à condition qu’il n’y ait aucune cellule vide au début de votre plage. Attention toutefois : si une cellule vide se trouve à l’intérieur de la liste (et non seulement à la fin), elle sera ignorée dans le décompte, mais pourrait générer des espaces indésirables dans la liste déroulante.
Problème potentiel : Si votre plage source peut contenir intentionnellement des cellules vides, ou si vous avez des plages fusionnées ou des données non contiguës, envisagez d’utiliser un tableau Excel comme plage source, ou consultez la méthode VBA ci-dessous pour une gestion plus flexible.
Afficher automatiquement le premier élément de la liste déroulante au lieu d’une cellule vide avec du code VBA
Dans certains cas, modifier uniquement la source de validation des données ne suffit pas — par exemple, si vos données changent fréquemment ou s’il existe un risque de cellules vides dues à d’autres raisons structurelles dans votre Plage source. Grâce à un code VBA simple, vous pouvez garantir que chaque fois qu’une cellule dotée de validation des données est activée, la liste déroulante sélectionne et affiche automatiquement le premier élément disponible. Cela peut également accélérer la saisie des données en réduisant le nombre de clics nécessaires.
1. Après avoir inséré votre liste déroulante, cliquez avec le bouton droit sur l’onglet de la feuille qui la contient, puis choisissez Afficher le code dans le menu contextuel. L’éditeur Microsoft Visual Basic pour Applications s’ouvre. Dans la fenêtre qui apparaît, collez le code suivant dans le module de la feuille concernée (et non dans un module standard). Ce code fonctionnera en arrière-plan et réinitialisera automatiquement la liste déroulante chaque fois que vous sélectionnerez une cellule validée :
Code VBA : Afficher automatiquement le premier élément de données dans la liste déroulante :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20160725
Dim xFormula As String
On Error GoTo Out:
xFormula = Target.Cells(1).Validation.Formula1
If Left(xFormula, 1) = "=" Then
Target.Cells(1) = Range(Mid(xFormula, 1)).Cells(1).Value
End If
Out:
End Sub

2. Après avoir collé le code, enregistrez votre classeur (de préférence au format prenant en charge les macros, avec l’extension .xlsm) et fermez la fenêtre de l’éditeur VBA. Retournez maintenant à votre feuille et cliquez sur n’importe quelle cellule dotée de la liste déroulante — dès que vous activez la cellule, le premier élément de votre liste s’affiche automatiquement.
Conseils et considérations : Cette approche VBA est idéale lorsque vous souhaitez offrir une expérience fluide aux utilisateurs, notamment avec des listes sources dynamiques ou longues, voire contenant inévitablement des cellules vides. N’oubliez pas d’activer les macros pour que cela fonctionne, et prévenez les autres utilisateurs du classeur, car certains environnements restreignent l’utilisation des macros pour des raisons de sécurité.
Dépannage : Si le code ne semble pas fonctionner, vérifiez qu’il est bien placé dans la fenêtre de code de la feuille appropriée dans l’éditeur VBA. Assurez-vous également que la liste déroulante utilise une validation de données standard.
Limitation : La solution VBA ne s’active que lorsque l’utilisateur sélectionne la cellule équipée de la liste déroulante ; elle ne fonctionne pas si la cellule est remplie par d’autres moyens (par exemple, via une formule ou un collage). Si vous supprimez la liste déroulante de la cellule ou la déplacez vers une autre feuille sans le code VBA, le comportement de sélection automatique sera perdu.
Utiliser un tableau Excel comme Plage source
Si votre liste source de la liste déroulante est dynamique et que vous recherchez une meilleure maintenabilité, envisagez de convertir votre liste source en tableau Excel. Les tableaux ajustent automatiquement leur taille lorsque des données sont ajoutées ou supprimées, ce qui permet à votre liste de rester à jour. Cependant, notez qu’un tableau Excel n’exclut pas automatiquement les cellules vides : toute entrée vide dans le tableau apparaîtra tout de même dans la Liste déroulante, sauf si vous les filtrez explicitement (par exemple à l’aide de la fonction FILTRE disponible dans Excel 365 et Excel 2021).
1. Sélectionnez vos données sources et appuyez sur Ctrl + T pour les convertir en tableau. Veillez à ce qu’aucune cellule ne soit vide dans l’en-tête. Donnez-lui un nom explicite, comme MaListe (via l’onglet Création de tableau).
2. Lors de la configuration de la validation des données, utilisez la référence structurée vers la colonne de votre tableau. Dans le champ Source, saisissez :
=INDIRECT("MyList[Column1]") Remplacez Colonne1 par le nom réel de votre colonne (l’en-tête de colonne). Cette méthode intègre dynamiquement tous les éléments remplis de la colonne du tableau, préservant ainsi l’intégrité de la liste à mesure que vous mettez à jour vos données.
Cette approche convient particulièrement aux environnements où la Données source est régulièrement mise à jour et où plusieurs utilisateurs doivent gérer efficacement la liste validée.
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels