Table des matières
Jusqu'à présent, nous avons examiné comment créer des listes déroulantes dans Excel. Aujourd'hui, je vais montrer Comment créer une liste déroulante avec des sélections multiples dans Excel ? .
Télécharger le cahier d'exercices
Vous pouvez télécharger le cahier d'exercices à partir d'ici.
Créer une liste déroulante avec sélection multiple.xlsmProcédures étape par étape pour créer une liste déroulante dans Excel avec des sélections multiples
Ici, nous avons un jeu de données ayant une colonne Nom du livre qui contient des noms de livres. Notre objectif aujourd'hui est de créer une liste déroulante basée sur cet ensemble de données qui prend des sélections multiples. Je vais montrer les procédures étape par étape dans la section ci-dessous.
ÉTAPE 1 : Créer une liste déroulante en utilisant la validation des données
Pour créer une liste déroulante avec des sélections multiples, nous devons d'abord créer une liste déroulante. Parcourons les procédures.
- Tout d'abord, sélectionnez la cellule où vous voulez créer la liste déroulante. J'ai sélectionné Cellule D5 .
- Ensuite, allez dans le Données et sélectionnez Validation des données du ruban.
- Ensuite, à partir de la Validation des données sélectionnez Liste sur Autoriser et inscrivez les cellules de la plage dont vous voulez ajouter les données à la liste dans la section Source : champ.
- Vous pouvez également cliquer sur la petite flèche vers le haut dans la fenêtre de l'ordinateur. Source : et sélectionnez la plage de données dans la feuille de calcul.
- Enfin, nous verrons une liste déroulante créée en Cellule D5 .
Lectures similaires :
- Comment créer une liste déroulante dans Excel (indépendante et dépendante)
- Effectuer une sélection multiple à partir d'une liste déroulante dans Excel (3 façons)
- Comment créer une liste déroulante dépendante dans Excel ?
- Créer une liste déroulante sur plusieurs colonnes dans Excel (3 façons)
ÉTAPE 2 : Activation de la liste déroulante pour accepter la sélection multiple par le code VBA
Nous avons déjà créé la liste déroulante. Maintenant, il est temps de préparer la liste déroulante pour des sélections multiples. Je vais utiliser 2 VBA codes pour permettre à la liste d'accepter des sélections multiples. L'un acceptera la répétition des données et l'autre ne prendra pas la répétition des données.
Cas 1 : Code VBA pour les sélections multiples avec répétition
Dans cette section, je vais montrer comment créer une liste déroulante avec des sélections multiples qui prendront une répétition de données.
Passons en revue les procédures.
- D'abord, appuyez sur ALT + F11 pour ouvrir le VBA fenêtre.
- Ensuite, sélectionnez Explorateur de projets . également, double - cliquez sur sur la feuille où vous voulez que la tâche soit effectuée.
- Simultanément, un Code s'ouvrira.
- Ensuite, écrivez le code suivant dans cette fenêtre.
Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String On Error GoTo Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then GoTo Exitsub Else : If Target.Value = "" Then GoTo Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue = Target.Value If Oldvalue = "" ThenTarget.Value = Newvalue Else Target.Value = Oldvalue & ; ", " & ; Newvalue End If End If End If Application.EnableEvents = True Exitsub : Application.EnableEvents = True End Sub
Note : Dans la partie code ( Si Adresse de la cible = "$D$5". Puis ) au lieu de la référence de la cellule $D$5, vous écrivez la référence de la cellule où vous avez créé la liste déroulante. - Enfin, revenez à la feuille de travail et nous pourrons sélectionner plusieurs éléments dans la liste déroulante avec une répétition du même élément.
Cas 2 : Code VBA pour la sélection multiple sans répétition
Dans cette section, je vais montrer comment créer une liste déroulante avec des sélections multiples qui ne prend pas une répétition de données.
Passons en revue les procédures.
- D'abord, appuyez sur ALT + F11 pour ouvrir le VBA fenêtre.
- Ensuite, sélectionnez Explorateur de projets . également, double - cliquez sur sur la feuille où vous voulez que la tâche soit effectuée.
- Simultanément, un Code apparaît.
- Ensuite, tapez le code suivant dans cette fenêtre.
Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String Application.EnableEvents = True On Error GoTo Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then GoTo Exitsub Else : If Target.Value = "" Then GoTo Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue =Target.Value If Oldvalue = "" Then Target.Value = Newvalue Else If InStr(1, Oldvalue, Newvalue) = 0 Then Target.Value = Oldvalue & ; ", " & ; Newvalue Else : Target.Value = Oldvalue End If End If End If Application.EnableEvents = True Exitsub : Application.EnableEvents = True End Sub
Note : Dans la partie code ( Si Adresse de la cible = "$D$5". Puis ) au lieu de la référence de la cellule $D$5, vous écrivez la référence de la cellule où vous avez créé la liste déroulante. - Enfin, revenez à la feuille de travail et nous pourrons sélectionner plusieurs éléments dans la liste déroulante sans répétition du même élément.
Conclusion
En utilisant cette méthode, vous pouvez créer une liste déroulante dans Excel avec des sélections multiples. Vous avez des questions ? N'hésitez pas à nous en faire part dans la section des commentaires. Visitez notre Site web d'ExcelWIKI pour d'autres articles concernant Excel .