Comment empêcher le copier-coller sur une cellule avec liste déroulante dans Excel ?
Les listes déroulantes de validation des données sont un moyen efficace de contrôler le type d'informations qui peuvent être saisies dans des cellules spécifiques d'Excel, aidant à maintenir la cohérence et l'intégrité des données dans vos feuilles de calcul. Cependant, un problème courant survient lorsque vous copiez du contenu à partir d'une autre cellule et que vous le collez dans une cellule contenant une liste déroulante — la validation des données est supprimée, et la liste déroulante disparaît. Cela peut entraîner la perte des règles de validation des données et rompre la logique du tableau, en particulier dans les scénarios où la saisie de l'utilisateur doit être restreinte aux options fournies par la liste déroulante.
Pour préserver l'intégrité de vos cellules avec listes déroulantes, vous pourriez vouloir empêcher les utilisateurs de coller par-dessus elles. Cela garantit que toutes les données dans ces champs critiques continuent de suivre les restrictions et options prévues. Dans ce tutoriel, vous apprendrez comment arrêter efficacement les actions de copier-coller sur des cellules contenant des listes déroulantes en utilisant VBA. Cette méthode convient aux formulaires, modèles de saisie contrôlée ou toute feuille de calcul où la qualité des données est essentielle.
Empêcher le copier-coller sur une cellule avec liste déroulante dans Excel
Empêcher le copier-coller sur une cellule avec liste déroulante dans Excel
Pour protéger vos listes déroulantes contre les remplacements par du contenu collé, vous pouvez utiliser VBA dans la feuille de calcul qui contient ces cellules. Suivez ces étapes :
1. Ouvrez la feuille de calcul qui inclut les listes déroulantes que vous souhaitez protéger.
2. Appuyez sur Alt + F11 pour ouvrir la fenêtre Visual Basic for Applications.
3. Dans le volet gauche, double-cliquez sur la feuille à laquelle vous souhaitez appliquer la protection (pas "ThisWorkbook"). Collez le code VBA suivant dans l'éditeur de code :
Code VBA : Empêcher le collage sur une liste déroulante
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice
Dim xValue As String
Dim xCheck1 As String
Dim xCheck2 As String
Dim xRg As Range
Dim xArrCheck1() As String
Dim xArrCheck2() As String
Dim xArrValue()
Dim xCount, xJ As Integer
Dim xBol As Boolean
' If Target.Count > 1 Then
' Exit Sub
' End If
xCount = Target.Count
ReDim xArrCheck1(1 To xCount)
ReDim xArrCheck2(1 To xCount)
ReDim xArrValue(1 To xCount)
Application.EnableEvents = False
On Error Resume Next
xJ = 1
For Each xRg In Target
xArrValue(xJ) = xRg.Value
xArrCheck1(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
Application.Undo
xJ = 1
For Each xRg In Target
xArrCheck2(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
xBol = False
For xJ = 1 To xCount
If xArrCheck2(xJ) <> xArrCheck1(xJ) Then
xBol = True
Exit For
End If
Next
If xBol Then
MsgBox "The selected cells containg data validation drop-down lists, no pasting allowed."
Else
xJ = 1
For Each xRg In Target
xRg.Value = xArrValue(xJ)
xJ = xJ + 1
Next
End If
Application.EnableEvents = True
End Sub
4. Appuyez sur Alt + Q pour fermer l'éditeur VBA et retourner à Excel.
5. Essayez de coller dans une cellule de la liste déroulante. Un message empêchera le collage, et la liste déroulante restera intacte :
Remarques et limitations :
Ce code VBA est conçu uniquement pour les actions de collage sur une seule cellule. Il peut ne pas empêcher la perte de validation des données lors d'un collage sur plusieurs cellules. Informez les utilisateurs en conséquence.
Conseils de dépannage :
- Assurez-vous que le code est placé dans le bon module de feuille de calcul (pas un module général).
- Activez les macros lors de l'ouverture du fichier.
- Vérifiez attentivement les erreurs de copier-coller lors de l'insertion du code.
- Testez la macro dans un fichier d'exemple avant de l'appliquer à des données réelles.
Solutions alternatives :
- Protéger la feuille de calcul : Verrouiller les cellules avec listes déroulantes et protéger la feuille pour éviter les modifications. En savoir plus
- Utiliser des alertes de validation des données : Définissez le style d'alerte sur "Arrêter" pour bloquer les entrées manuelles invalides. En savoir plus
Créer facilement une liste déroulante avec cases à cocher dans Excel :
L'utilitaire Liste déroulante avec cases à cocher de Kutools pour Excel peut vous aider à créer facilement une liste déroulante avec cases à cocher dans une plage spécifiée, la feuille de calcul actuelle, le classeur actuel ou tous les classeurs ouverts selon vos besoins.
Téléchargez dès maintenant la version d'essai gratuite complète 30-jour de Kutools pour Excel !
Articles connexes :
Comment créer une liste déroulante avec plusieurs cases à cocher dans Excel ?
De nombreux utilisateurs d'Excel ont tendance à créer une liste déroulante avec plusieurs cases à cocher afin de sélectionner plusieurs éléments de la liste à la fois. En réalité, vous ne pouvez pas créer une liste avec plusieurs cases à cocher via la validation des données. Dans ce tutoriel, nous allons vous montrer deux méthodes pour créer une liste déroulante avec plusieurs cases à cocher dans Excel. Ce tutoriel fournit une solution au problème.
Créer une liste déroulante depuis un autre classeur dans Excel
Il est assez simple de créer une liste déroulante de validation des données entre plusieurs feuilles de calcul dans un même classeur. Mais si les données de la liste nécessaires pour la validation des données se trouvent dans un autre classeur, que feriez-vous ? Dans ce tutoriel, vous apprendrez en détail comment créer une liste déroulante depuis un autre classeur dans Excel.
Créer une liste déroulante consultable dans Excel
Pour une liste déroulante comportant de nombreuses valeurs, trouver celle qui convient n'est pas une tâche facile. Auparavant, nous avons introduit une méthode permettant de compléter automatiquement la liste déroulante lorsqu'on saisit la première lettre dans la zone de liste déroulante. Outre la fonction d'autocomplétion, vous pouvez également rendre la liste déroulante consultable pour améliorer l'efficacité de recherche des bonnes valeurs dans la liste déroulante. Pour rendre la liste déroulante consultable, essayez la méthode décrite dans ce tutoriel.
Remplir automatiquement d'autres cellules lors de la sélection de valeurs dans une liste déroulante Excel
Disons que vous avez créé une liste déroulante basée sur les valeurs de la plage de cellules B8:B14. Lorsque vous sélectionnez une valeur dans la liste déroulante, vous souhaitez que les valeurs correspondantes dans la plage de cellules C8:C14 soient automatiquement remplies dans une cellule sélectionnée. Pour résoudre le problème, les méthodes de ce tutoriel vous seront utiles.
Meilleurs outils de productivité pour Office
Améliorez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité incomparable. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte l’interface par onglets à Office, simplifiant considérablement 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 chaque jour !
Tous les modules complémentaires Kutools. Une seule installation
La suite Kutools for Office regroupe les modules complémentaires pour Excel, Word, Outlook & PowerPoint ainsi qu’Office Tab Pro, idéal pour les équipes travaillant sur plusieurs applications Office.





- Suite tout-en-un — modules complémentaires Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Un installateur, une licence — installation en quelques minutes (compatible MSI)
- Une synergie optimale — productivité accélérée sur l’ensemble des applications Office
- Essai complet30 jours — sans inscription, ni carte bancaire
- Meilleure valeur — économisez par rapport à l’achat d’add-ins individuels