Comment effacer le contenu d'une zone de liste déroulante avec un code VBA dans Excel ?
Normalement, vous pouvez effacer le contenu d'une zone de liste déroulante en effaçant les données de la liste de la plage d'entrée. Mais comment faire pour effacer le contenu de toutes les zones de liste déroulante dans une feuille de calcul Excel ? Cet article propose deux codes VBA pour vous aider non seulement à effacer le contenu d'une zone de liste déroulante, mais aussi à effacer le contenu de toutes les zones de liste déroulante en même temps dans une feuille de calcul Excel.
Effacer facilement le contenu d'une zone de liste déroulante avec un code VBA
Effacer facilement le contenu d'une zone de liste déroulante avec un code VBA
Les deux codes VBA ci-dessous peuvent vous aider à effacer le contenu d'une zone de liste déroulante ou de toutes les zones de liste déroulante dans la feuille de calcul active. Veuillez procéder comme suit.
1. Dans la feuille de calcul où vous devez effacer le contenu d'une zone de liste déroulante, appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic for Applications.
2. Dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insérer > Module. Ensuite, copiez le code VBA ci-dessous dans la fenêtre Code.
VBA 1 : Effacer le contenu d'une zone de liste déroulante dans une feuille de calcul
Sub ClearAComboBox()
ActiveSheet.Shapes.Range(Array("Drop Down 2")).Select
With Selection
.ListFillRange = ""
End With
End Sub
Remarque : Dans le code, « Liste déroulante 2 » est le nom de la zone de liste déroulante dont vous allez effacer le contenu. Veuillez le changer selon votre propre configuration.
VBA 2 : Effacer le contenu de toutes les zones de liste déroulante dans la feuille de calcul active
Sub ClearComboBox()
Dim xOle As OLEObject
Dim xDrop As DropDown
Application.ScreenUpdating = False
For Each xOle In ActiveSheet.OLEObjects
If TypeName(xOle.Object) = "ComboBox" Then
xOle.ListFillRange = ""
End If
Next
For Each xDrop In ActiveSheet.DropDowns
xDrop.ListFillRange = ""
Next
Application.ScreenUpdating = True
End Sub
3. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter le code.
Vous pouvez ensuite voir que le contenu a été effacé dans la zone de liste déroulante spécifiée ou dans toutes les zones de liste déroulante de la feuille de calcul active, comme le montre la capture d'écran ci-dessous :
Remarque : Les codes VBA peuvent être appliqués aux zones de liste déroulante (Contrôle de formulaire) et aux zones de liste déroulante (Contrôle ActiveX).

Découvrez la magie d'Excel avec Kutools AI
- Exécution intelligente : Effectuez des opérations sur les cellules, analysez les données et créez des graphiques, le tout piloté par des commandes simples.
- Formules personnalisées : Générez des formules adaptées pour rationaliser vos flux de travail.
- Codage VBA : Écrivez et implémentez du code VBA sans effort.
- Interprétation des formules : Comprenez facilement des formules complexes.
- Traduction de texte : Surmontez les barrières linguistiques dans vos feuilles de calcul.
Articles connexes :
- Comment effacer le contenu et la mise en forme en même temps dans des cellules dans Excel ?
- Comment effacer le contenu d'une plage nommée dans Excel ?
- Comment effacer les valeurs restreintes dans des cellules dans Excel ?
- Comment effacer le contenu d'une cellule spécifiée si la valeur d'une autre cellule change dans Excel ?
- Comment effacer le contenu d'une cellule spécifiée lors de l'ouverture et de la fermeture d'un classeur Excel ?
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la 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 facilite grandement votre travail
- Activez la modification 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é de50 %, et réduit des centaines de clics de souris pour vous chaque jour !