Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment effacer le contenu de la zone de liste déroulante avec le 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 Plage d'entrée. Mais qu'en est-il de la suppression du contenu de toutes les zones de liste déroulante dans une feuille de calcul Excel? Cet article prépare deux codes VBA pour vous aider non seulement à effacer le contenu d'une zone de liste modifiable, mais également 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 de la zone de liste déroulante par code VBA


Effacer facilement le contenu de la zone de liste déroulante par code VBA


Les deux codes VBA ci-dessous peuvent vous aider à effacer le contenu d'une zone de liste déroulante ou toutes les zones de liste déroulante dans la feuille de calcul active. S'il vous plaît faire comme suit.

1. Dans la feuille de calcul, vous devez effacer le contenu d'une zone de liste déroulante, appuyez sur autre + F11 touches en même temps pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module. Copiez ensuite le code VBA dans la fenêtre Code.

VBA 1: Effacer le contenu d'une zone de liste déroulante dans la feuille de calcul

Sub ClearAComboBox()
ActiveSheet.Shapes.Range(Array("Drop Down 2")).Select
With Selection
    .ListFillRange = ""
End With
End Sub

Note: Dans le code, "Drop Down 2" est le nom de la liste déroulante dont vous allez effacer le contenu. Veuillez le changer pour le vôtre.

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. appuie sur le F5 ou cliquez sur le bouton Exécuter pour exécuter le code.

Ensuite, vous pouvez voir le contenu est effacé dans la zone de liste déroulante spécifiée ou toutes les zones de liste déroulante dans la feuille de calcul active comme ci-dessous capture d'écran montré:

Note: les codes VBA peuvent être appliqués à la fois Combo Box (contrôle de formulaire) et Combo Box (contrôle ActiveX).


Articles Liés:



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.