SlideShare ist ein Scribd-Unternehmen logo
1 von 3
Downloaden Sie, um offline zu lesen
Votre Assistante : https://www.votreassistante.net - le 08/02/2022
Article écrit par Lydia Provin du site
Votre Assistante : https://www.votreassistante.net
1
Comment réinitialiser (vider) une liste déroulante en cascade sur Excel ?
Lors du tutoriel sur la création de liste déroulante en cascade sur Excel, vous vous êtes
probablement aperçu que lorsque vous modifiiez votre choix dans la première liste, la seconde
liste n’était pas réinitialisée automatiquement et vous pouviez obtenir ce genre d’affichage :
Bien sûr, vous pouvez appuyer sur la touche Suppr de votre clavier lorsque vous êtes sur la
deuxième cellule, mais il est quand même préférable que cela se fasse automatiquement afin
d’éviter les oublis et c’est ce que nous allons voir dans ce tutoriel.
Afficher le menu Développeur
Pour réinitialiser ou vider une liste déroulante, nous avons besoin d’utiliser le menu
Développeur d’Excel, car nous allons utiliser du code VBA (Visual Basic for Applications).
S’il n’est pas affiché, je vous invite à consulter ce tutoriel où j’explique comment le faire avec
la dernière version d’Excel à ce jour sur Windows ou sur Mac.
Réinitialiser (vider) une liste déroulante en cascade sur Excel
Pour réinitialiser une liste déroulante, rendez-vous dans le menu Développeur > Visual
Basic . Dans l’Explorateur de projets, à gauche de l’écran (s’il n’apparaît pas, faites
Ctrl + R sur Windows ou Cmd + R sur Mac), faites un clic droit > Code sur la
feuille où se trouvent vos listes en cascade : ici, il s’agit de Feuil2 (Listes).
En haut du module qui s’affiche, sélectionnez dans la liste de gauche Worksheet et dans la liste
de droite Change. Cela vous a créé une procédure inutile (Worksheet_SelectionChange) que
vous pouvez supprimer. Puis, replacez votre curseur à l’intérieur de la procédure
Worksheet_Change.
Dans cet exemple, ma première liste se trouve en A1 et la deuxième en B1, j’écris donc :
If Target.Address = "$A$1" Then
1
Range("B1").Value = ""
2
End If
3
Votre Assistante : https://www.votreassistante.net - le 08/02/2022
Article écrit par Lydia Provin du site
Votre Assistante : https://www.votreassistante.net
2
Ce code signifie que si la cellule A1 est modifiée (puisque je suis dans l’évènement du
changement sur la feuille Listes), alors la cellule B1 sera égale à rien.
Maintenant, si je réduis la fenêtre de l’éditeur VBA et que je sélectionne un autre pays, ma liste
de villes est vidée.
Je peux améliorer cette procédure en invitant l’utilisateur à sélectionner une ville. Pour cela, je
retourne dans l’éditeur VBA et, entre les guillemets vides, je saisis Sélectionnez une ville.
Ma procédure complète est donc :
Private Sub Worksheet_Change(ByVal Target As Range)
1
If Target.Address = "$A$1" Then
2
Range("B1").Value = "Sélectionnez une ville"
3
End If
4
End Sub
5
Si je retourne à ma feuille Excel, que je sélectionne une ville, puis que je sélectionne un autre
pays, j’ai bien la phrase Sélectionnez une ville. Cela fonctionne même si vous empêchez
l’utilisateur de saisir autre chose qu’un élément de la liste via l’onglet Alerte d’erreur de la
Validation des données .
Réinitialiser (vider) plusieurs listes déroulantes en cascade sur Excel
Si plusieurs de vos cellules sont en cascade, A1 à A10 par exemple, il n’est pas nécessaire de
copier-coller 10 fois la procédure que nous venons de voir.
Pour cela, dans l’éditeur VBA, à la place du code précédent, mais toujours dans le même
évènement, nous allons instancier un objet (une plage de cellules) avec Set (que nous déclarons
préalablement), puis exécuter une boucle. Ce qui donne :
Private Sub Worksheet_Change(ByVal Target As Range)
1
Dim Reference As Range
2
Set Reference = Intersect(Target, Range("A1:A10"))
3
4
If Reference Is Nothing Then Exit Sub
5
6
For Each Reference In Reference
7
Range("B" & Reference.Row).Value = "Sélectionnez une ville"
8
Next
9
Votre Assistante : https://www.votreassistante.net - le 08/02/2022
Article écrit par Lydia Provin du site
Votre Assistante : https://www.votreassistante.net
3
End Sub
10
Dans cet exemple, j’indique que le changement susceptible de produire l’évènement se fera
dans la plage de cellules A1 à A10 (ligne 3) et, si c’est en dehors de la plage (ligne 5), alors on
met fin à la procédure.
La boucle (lignes 7 à 9) permet d’indiquer Sélectionnez une ville pour chaque ligne en
colonne B dont la colonne A aurait été modifiée.
Si je modifie la cellule A3, Reference sera égale au pays que je sélectionne et Reference.row au
numéro de la ligne donc 3 : B3 sera égale à Sélectionnez une ville.
Enfin, si vous ne souhaitez pas écrire cette phrase, laissez les guillemets vides.
N’oubliez pas d’enregistrer votre fichier dans un format prenant en charge les macros pour ne
pas perdre votre procédure à la fermeture du fichier.
Vous retrouverez le fichier utilisé dans l’Espace Membres accessible aux abonnés à la
newsletter.
Je prépare une formation sur le VBA d’Excel niveau débutant et avancé. Si vous souhaitez
être tenu informé de sa sortie, inscrivez-vous à la newsletter Excel.
Tutoriel réalisé avec Excel Microsoft 365
Voir la version vidéo de cet article

Weitere ähnliche Inhalte

Ähnlich wie Comment réinitialiser (vider) une liste déroulante en cascade sur Excel ?

Comment alimenter une liste déroulante dans Word avec une liste Excel ?
Comment alimenter une liste déroulante dans Word avec une liste Excel ?Comment alimenter une liste déroulante dans Word avec une liste Excel ?
Comment alimenter une liste déroulante dans Word avec une liste Excel ?Votre Assistante
 
mis
mismis
misISIG
 
Chapitre 9-Les Formulaires et les contrôles.pptx
Chapitre 9-Les Formulaires et les contrôles.pptxChapitre 9-Les Formulaires et les contrôles.pptx
Chapitre 9-Les Formulaires et les contrôles.pptxSamiBENAISSIA1
 
js---Partie1----.pdf
js---Partie1----.pdfjs---Partie1----.pdf
js---Partie1----.pdfMiRA452885
 
Créer des listes déroulantes en cascade avec Excel
Créer des listes déroulantes en cascade avec ExcelCréer des listes déroulantes en cascade avec Excel
Créer des listes déroulantes en cascade avec ExcelVotre Assistante
 
Visual studio
Visual studioVisual studio
Visual studioISIG
 
Pourquoi et comment créer un plan sur Excel ?
Pourquoi et comment créer un plan sur Excel ?Pourquoi et comment créer un plan sur Excel ?
Pourquoi et comment créer un plan sur Excel ?Votre Assistante
 
Initiation à la programmation sous excel tutoriel2
Initiation à la programmation sous excel tutoriel2Initiation à la programmation sous excel tutoriel2
Initiation à la programmation sous excel tutoriel2Christophe Malpart
 
Cours c#
Cours c#Cours c#
Cours c#zan
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Quelle est la différence entre TABLE et MATRICE ? Et les requêtes PIVOT
Quelle est la différence entre TABLE et MATRICE ?  Et les requêtes PIVOTQuelle est la différence entre TABLE et MATRICE ?  Et les requêtes PIVOT
Quelle est la différence entre TABLE et MATRICE ? Et les requêtes PIVOTAbdel Yezza
 
Programmation en VBA Introduction au language Visual Basic for Applications ...
Programmation en VBA  Introduction au language Visual Basic for Applications ...Programmation en VBA  Introduction au language Visual Basic for Applications ...
Programmation en VBA Introduction au language Visual Basic for Applications ...Bassim ELKHATTABY
 
Rechercher et supprimer les doublons sur Access
Rechercher et supprimer les doublons sur AccessRechercher et supprimer les doublons sur Access
Rechercher et supprimer les doublons sur AccessVotre Assistante
 
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...Votre Assistante
 

Ähnlich wie Comment réinitialiser (vider) une liste déroulante en cascade sur Excel ? (20)

syntax-matlab.pdf
syntax-matlab.pdfsyntax-matlab.pdf
syntax-matlab.pdf
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Comment alimenter une liste déroulante dans Word avec une liste Excel ?
Comment alimenter une liste déroulante dans Word avec une liste Excel ?Comment alimenter une liste déroulante dans Word avec une liste Excel ?
Comment alimenter une liste déroulante dans Word avec une liste Excel ?
 
mis
mismis
mis
 
jQuery mobile [Part2]
jQuery mobile [Part2]jQuery mobile [Part2]
jQuery mobile [Part2]
 
Chapitre 9-Les Formulaires et les contrôles.pptx
Chapitre 9-Les Formulaires et les contrôles.pptxChapitre 9-Les Formulaires et les contrôles.pptx
Chapitre 9-Les Formulaires et les contrôles.pptx
 
js---Partie1----.pdf
js---Partie1----.pdfjs---Partie1----.pdf
js---Partie1----.pdf
 
Tp1 matlab
Tp1 matlab Tp1 matlab
Tp1 matlab
 
Créer des listes déroulantes en cascade avec Excel
Créer des listes déroulantes en cascade avec ExcelCréer des listes déroulantes en cascade avec Excel
Créer des listes déroulantes en cascade avec Excel
 
Visual studio
Visual studioVisual studio
Visual studio
 
Pourquoi et comment créer un plan sur Excel ?
Pourquoi et comment créer un plan sur Excel ?Pourquoi et comment créer un plan sur Excel ?
Pourquoi et comment créer un plan sur Excel ?
 
Initiation à la programmation sous excel tutoriel2
Initiation à la programmation sous excel tutoriel2Initiation à la programmation sous excel tutoriel2
Initiation à la programmation sous excel tutoriel2
 
Cours c#
Cours c#Cours c#
Cours c#
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Quelle est la différence entre TABLE et MATRICE ? Et les requêtes PIVOT
Quelle est la différence entre TABLE et MATRICE ?  Et les requêtes PIVOTQuelle est la différence entre TABLE et MATRICE ?  Et les requêtes PIVOT
Quelle est la différence entre TABLE et MATRICE ? Et les requêtes PIVOT
 
Programmation en VBA Introduction au language Visual Basic for Applications ...
Programmation en VBA  Introduction au language Visual Basic for Applications ...Programmation en VBA  Introduction au language Visual Basic for Applications ...
Programmation en VBA Introduction au language Visual Basic for Applications ...
 
Rechercher et supprimer les doublons sur Access
Rechercher et supprimer les doublons sur AccessRechercher et supprimer les doublons sur Access
Rechercher et supprimer les doublons sur Access
 
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...
Comment cocher et décocher des cases à cocher en 1 clic dans un formulaire su...
 
Exo algo
Exo algoExo algo
Exo algo
 

Mehr von Votre Assistante

Comment créer un effet de texte avec une ombre longue sur Illustrator ?
Comment créer un effet de texte avec une ombre longue sur Illustrator ?Comment créer un effet de texte avec une ombre longue sur Illustrator ?
Comment créer un effet de texte avec une ombre longue sur Illustrator ?Votre Assistante
 
Comment compacter une base de données Access en VBA.pdf
Comment compacter une base de données Access en VBA.pdfComment compacter une base de données Access en VBA.pdf
Comment compacter une base de données Access en VBA.pdfVotre Assistante
 
Comment créer un modèle de document Word ?
Comment créer un modèle de document Word ?Comment créer un modèle de document Word ?
Comment créer un modèle de document Word ?Votre Assistante
 
Comment ouvrir plusieurs images dans Camera Raw ?
Comment ouvrir plusieurs images dans Camera Raw ?Comment ouvrir plusieurs images dans Camera Raw ?
Comment ouvrir plusieurs images dans Camera Raw ?Votre Assistante
 
Comment créer un modèle de diaporama PowerPoint ?
Comment créer un modèle de diaporama PowerPoint ?Comment créer un modèle de diaporama PowerPoint ?
Comment créer un modèle de diaporama PowerPoint ?Votre Assistante
 
Comment calculer l'âge dans une base de données Access ?
Comment calculer l'âge dans une base de données Access ?Comment calculer l'âge dans une base de données Access ?
Comment calculer l'âge dans une base de données Access ?Votre Assistante
 
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?Votre Assistante
 
Comment créer un effet vignettage sur Photoshop ?
Comment créer un effet vignettage sur Photoshop ?Comment créer un effet vignettage sur Photoshop ?
Comment créer un effet vignettage sur Photoshop ?Votre Assistante
 
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...Votre Assistante
 
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...Votre Assistante
 
Comment numéroter certaines lignes dans Word ?
Comment numéroter certaines lignes dans Word ?Comment numéroter certaines lignes dans Word ?
Comment numéroter certaines lignes dans Word ?Votre Assistante
 
Comment créer un modèle de base de données Access ?
Comment créer un modèle de base de données Access ?Comment créer un modèle de base de données Access ?
Comment créer un modèle de base de données Access ?Votre Assistante
 
Comment créer un effet fourrure sur Illustrator ?
Comment créer un effet fourrure sur Illustrator ?Comment créer un effet fourrure sur Illustrator ?
Comment créer un effet fourrure sur Illustrator ?Votre Assistante
 
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...Votre Assistante
 
Comment créer un calendrier perpétuel sur Excel ?
Comment créer un calendrier perpétuel sur Excel ?Comment créer un calendrier perpétuel sur Excel ?
Comment créer un calendrier perpétuel sur Excel ?Votre Assistante
 
Créer un bonhomme de neige avec Illustrator
Créer un bonhomme de neige avec IllustratorCréer un bonhomme de neige avec Illustrator
Créer un bonhomme de neige avec IllustratorVotre Assistante
 
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)Votre Assistante
 
4 astuces avancées pour PowerPoint et une astuce Bonus
4 astuces avancées pour PowerPoint et une astuce Bonus4 astuces avancées pour PowerPoint et une astuce Bonus
4 astuces avancées pour PowerPoint et une astuce BonusVotre Assistante
 
Comment convertir une image en noir et blanc sur Illustrator ?
Comment convertir une image en noir et blanc sur Illustrator ?Comment convertir une image en noir et blanc sur Illustrator ?
Comment convertir une image en noir et blanc sur Illustrator ?Votre Assistante
 
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...Votre Assistante
 

Mehr von Votre Assistante (20)

Comment créer un effet de texte avec une ombre longue sur Illustrator ?
Comment créer un effet de texte avec une ombre longue sur Illustrator ?Comment créer un effet de texte avec une ombre longue sur Illustrator ?
Comment créer un effet de texte avec une ombre longue sur Illustrator ?
 
Comment compacter une base de données Access en VBA.pdf
Comment compacter une base de données Access en VBA.pdfComment compacter une base de données Access en VBA.pdf
Comment compacter une base de données Access en VBA.pdf
 
Comment créer un modèle de document Word ?
Comment créer un modèle de document Word ?Comment créer un modèle de document Word ?
Comment créer un modèle de document Word ?
 
Comment ouvrir plusieurs images dans Camera Raw ?
Comment ouvrir plusieurs images dans Camera Raw ?Comment ouvrir plusieurs images dans Camera Raw ?
Comment ouvrir plusieurs images dans Camera Raw ?
 
Comment créer un modèle de diaporama PowerPoint ?
Comment créer un modèle de diaporama PowerPoint ?Comment créer un modèle de diaporama PowerPoint ?
Comment créer un modèle de diaporama PowerPoint ?
 
Comment calculer l'âge dans une base de données Access ?
Comment calculer l'âge dans une base de données Access ?Comment calculer l'âge dans une base de données Access ?
Comment calculer l'âge dans une base de données Access ?
 
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?
Comment utiliser et modifier des icônes Font Awesome sur Illustrator ?
 
Comment créer un effet vignettage sur Photoshop ?
Comment créer un effet vignettage sur Photoshop ?Comment créer un effet vignettage sur Photoshop ?
Comment créer un effet vignettage sur Photoshop ?
 
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...
Comment insérer des données Excel dans PowerPoint avec ou sans mise à jour au...
 
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...
Pourquoi utiliser le menu Développeur de Microsoft et comment l’afficher sur ...
 
Comment numéroter certaines lignes dans Word ?
Comment numéroter certaines lignes dans Word ?Comment numéroter certaines lignes dans Word ?
Comment numéroter certaines lignes dans Word ?
 
Comment créer un modèle de base de données Access ?
Comment créer un modèle de base de données Access ?Comment créer un modèle de base de données Access ?
Comment créer un modèle de base de données Access ?
 
Comment créer un effet fourrure sur Illustrator ?
Comment créer un effet fourrure sur Illustrator ?Comment créer un effet fourrure sur Illustrator ?
Comment créer un effet fourrure sur Illustrator ?
 
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...
Comment créer une carte de vœux sur Photoshop avec un effet de sapin de Noël ...
 
Comment créer un calendrier perpétuel sur Excel ?
Comment créer un calendrier perpétuel sur Excel ?Comment créer un calendrier perpétuel sur Excel ?
Comment créer un calendrier perpétuel sur Excel ?
 
Créer un bonhomme de neige avec Illustrator
Créer un bonhomme de neige avec IllustratorCréer un bonhomme de neige avec Illustrator
Créer un bonhomme de neige avec Illustrator
 
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)
Gérer sa facturation avec Access (MAJ du tutoriel Créer une facture avec Access)
 
4 astuces avancées pour PowerPoint et une astuce Bonus
4 astuces avancées pour PowerPoint et une astuce Bonus4 astuces avancées pour PowerPoint et une astuce Bonus
4 astuces avancées pour PowerPoint et une astuce Bonus
 
Comment convertir une image en noir et blanc sur Illustrator ?
Comment convertir une image en noir et blanc sur Illustrator ?Comment convertir une image en noir et blanc sur Illustrator ?
Comment convertir une image en noir et blanc sur Illustrator ?
 
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...
Astuce Word VBA : insérer un mot ou plusieurs avec une mise en forme spécifiq...
 

Comment réinitialiser (vider) une liste déroulante en cascade sur Excel ?

  • 1. Votre Assistante : https://www.votreassistante.net - le 08/02/2022 Article écrit par Lydia Provin du site Votre Assistante : https://www.votreassistante.net 1 Comment réinitialiser (vider) une liste déroulante en cascade sur Excel ? Lors du tutoriel sur la création de liste déroulante en cascade sur Excel, vous vous êtes probablement aperçu que lorsque vous modifiiez votre choix dans la première liste, la seconde liste n’était pas réinitialisée automatiquement et vous pouviez obtenir ce genre d’affichage : Bien sûr, vous pouvez appuyer sur la touche Suppr de votre clavier lorsque vous êtes sur la deuxième cellule, mais il est quand même préférable que cela se fasse automatiquement afin d’éviter les oublis et c’est ce que nous allons voir dans ce tutoriel. Afficher le menu Développeur Pour réinitialiser ou vider une liste déroulante, nous avons besoin d’utiliser le menu Développeur d’Excel, car nous allons utiliser du code VBA (Visual Basic for Applications). S’il n’est pas affiché, je vous invite à consulter ce tutoriel où j’explique comment le faire avec la dernière version d’Excel à ce jour sur Windows ou sur Mac. Réinitialiser (vider) une liste déroulante en cascade sur Excel Pour réinitialiser une liste déroulante, rendez-vous dans le menu Développeur > Visual Basic . Dans l’Explorateur de projets, à gauche de l’écran (s’il n’apparaît pas, faites Ctrl + R sur Windows ou Cmd + R sur Mac), faites un clic droit > Code sur la feuille où se trouvent vos listes en cascade : ici, il s’agit de Feuil2 (Listes). En haut du module qui s’affiche, sélectionnez dans la liste de gauche Worksheet et dans la liste de droite Change. Cela vous a créé une procédure inutile (Worksheet_SelectionChange) que vous pouvez supprimer. Puis, replacez votre curseur à l’intérieur de la procédure Worksheet_Change. Dans cet exemple, ma première liste se trouve en A1 et la deuxième en B1, j’écris donc : If Target.Address = "$A$1" Then 1 Range("B1").Value = "" 2 End If 3
  • 2. Votre Assistante : https://www.votreassistante.net - le 08/02/2022 Article écrit par Lydia Provin du site Votre Assistante : https://www.votreassistante.net 2 Ce code signifie que si la cellule A1 est modifiée (puisque je suis dans l’évènement du changement sur la feuille Listes), alors la cellule B1 sera égale à rien. Maintenant, si je réduis la fenêtre de l’éditeur VBA et que je sélectionne un autre pays, ma liste de villes est vidée. Je peux améliorer cette procédure en invitant l’utilisateur à sélectionner une ville. Pour cela, je retourne dans l’éditeur VBA et, entre les guillemets vides, je saisis Sélectionnez une ville. Ma procédure complète est donc : Private Sub Worksheet_Change(ByVal Target As Range) 1 If Target.Address = "$A$1" Then 2 Range("B1").Value = "Sélectionnez une ville" 3 End If 4 End Sub 5 Si je retourne à ma feuille Excel, que je sélectionne une ville, puis que je sélectionne un autre pays, j’ai bien la phrase Sélectionnez une ville. Cela fonctionne même si vous empêchez l’utilisateur de saisir autre chose qu’un élément de la liste via l’onglet Alerte d’erreur de la Validation des données . Réinitialiser (vider) plusieurs listes déroulantes en cascade sur Excel Si plusieurs de vos cellules sont en cascade, A1 à A10 par exemple, il n’est pas nécessaire de copier-coller 10 fois la procédure que nous venons de voir. Pour cela, dans l’éditeur VBA, à la place du code précédent, mais toujours dans le même évènement, nous allons instancier un objet (une plage de cellules) avec Set (que nous déclarons préalablement), puis exécuter une boucle. Ce qui donne : Private Sub Worksheet_Change(ByVal Target As Range) 1 Dim Reference As Range 2 Set Reference = Intersect(Target, Range("A1:A10")) 3 4 If Reference Is Nothing Then Exit Sub 5 6 For Each Reference In Reference 7 Range("B" & Reference.Row).Value = "Sélectionnez une ville" 8 Next 9
  • 3. Votre Assistante : https://www.votreassistante.net - le 08/02/2022 Article écrit par Lydia Provin du site Votre Assistante : https://www.votreassistante.net 3 End Sub 10 Dans cet exemple, j’indique que le changement susceptible de produire l’évènement se fera dans la plage de cellules A1 à A10 (ligne 3) et, si c’est en dehors de la plage (ligne 5), alors on met fin à la procédure. La boucle (lignes 7 à 9) permet d’indiquer Sélectionnez une ville pour chaque ligne en colonne B dont la colonne A aurait été modifiée. Si je modifie la cellule A3, Reference sera égale au pays que je sélectionne et Reference.row au numéro de la ligne donc 3 : B3 sera égale à Sélectionnez une ville. Enfin, si vous ne souhaitez pas écrire cette phrase, laissez les guillemets vides. N’oubliez pas d’enregistrer votre fichier dans un format prenant en charge les macros pour ne pas perdre votre procédure à la fermeture du fichier. Vous retrouverez le fichier utilisé dans l’Espace Membres accessible aux abonnés à la newsletter. Je prépare une formation sur le VBA d’Excel niveau débutant et avancé. Si vous souhaitez être tenu informé de sa sortie, inscrivez-vous à la newsletter Excel. Tutoriel réalisé avec Excel Microsoft 365 Voir la version vidéo de cet article