Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

détecter un doublon à la saisie

D

daniel

Guest
Bonjour les as du forum !

Voici mon petit problème....
Dans la colonne A de ma feuille, j'ai un grand nombre de codes uniques. Lors de la saisie d'un nouveau code, je voudrais, pour éviter toute erreur, qu'un message m'avertisse si le code que je saisis existe déjà dans la colonne et interdise dès lors sa saisie.

Merci pour votre aide

Daniel
 

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour Daniel

A copier dans le code de ta feuille en question :

Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)

  If Target.Column = 1 Then     'Concerne la colonne A
  
    If Application.WorksheetFunction. _
        CountIf(Range('A:A'), Target.Value) > 1 Then

      MsgBox 'Valeur déjà saisie !!! -- Veuillez recommencer'
      Target.Value = ''
      Target.Select
    End If
    
  End If
  
End Sub

Bonne journée à toutes & à tous

Message édité par: Eric C, à: 18/11/2005 09:44
 

Eric C

XLDnaute Barbatruc
Re le forum
Re bonjour daniel

Dites moi, j'étais revenu sur le post et je m'aperçois que le code que j'ai 'copié/collé' depuis EXCEL n'apparaît pas à l'identique : Work sheetFonction - Tar get - ajout de nb$ .... ???? J'ai retenté de le recopié mais tjrs pareil ? Lisez-vous le code sans défaut où est-ce uniquement chez moi ?


Je joint un fichier image pour détail [file name=Image_20051118095915.zip size=30725]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Image_20051118095915.zip[/file]

Message édité par: Eric C, à: 18/11/2005 09:59
 

Pièces jointes

  • Image_20051118095915.zip
    30 KB · Affichages: 41

Gael

XLDnaute Barbatruc
Bonjour Daniel, Bonjour Eric,

Pour éviter une double saisie, le mieux en utilisant les fonctions standards d'XL reste la validation de données.

Il suffit dans ce cas pour la colonne A de faire données validation puis Personnalisé avec la formule suivante:

=NB.SI($A:$A;$A1)=1

On peut avec les options gérer le type d'erreur (Information, avertissement ou arrêt) ainsi que le message à afficher.

Eric, j'obtiens la même chose que toi pour l'affichage du code. Pour envoyer du code, j'utilise généralement la macro VBA to XLD qui marche très bien et ne pose pas de problème de ce genre. Tu peux la télécharger sur le forum.

@+

Gael
 

Discussions similaires

Réponses
18
Affichages
786
Réponses
3
Affichages
571
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…