Doublons après entrée userform

bonjour, je reviens vers vous afin d'éviter les doublons, en effet j'aimerais que lorsque je rentre une entree en "B"(numero de clefs), elle puisse se faire que si le mm numéro présent dans la colonne "B" a eu un retour en colonne "E" pour eviter les erreurs d'enregistrement.

je ne sais pas si c'est tres clair.

je vous met mon code

Option Explicit

If Len(TextBox2) = 0 Then
MsgBox "saisie incomplète"
TextBox2.SetFocus: Exit Sub
End If
If Len(TextBox3) = 0 Then
MsgBox "saisie incomplète"
TextBox3.SetFocus: Exit Sub
End If
If Len(TextBox4) = 0 Then
MsgBox "saisie incomplète"
TextBox4.SetFocus: Exit Sub
End If

Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Unload UserForm1

End Sub

Private Sub Label1_Click()

End Sub

Private Sub TextBox1_Change()

[A2] = TextBox1

End Sub
Private Sub TextBox2_Change()
[B2] = TextBox2

End Sub

Private Sub TextBox3_Change()
[C2] = TextBox3
End Sub

Private Sub TextBox4_Change()
[D2] = TextBox4
End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()
TextBox1.Value = Format(Now(), "mm/dd/yyyy-hh:mm")
UserForm1.TextBox2.SetFocus
End Sub

Bonjour,

Pas facile de comprendre d'autant qu'il y a plusieurs macros qui sont soit incomplètes ou sont vides

Sans données confidentielles

donc je vous joints mon fichier, en fait je souhaite que si une clef est sortie , on ne peut pas la faire sortir tant qu'elle n'est pas rentrée , logique en fait pour ne pas faire d'erreur

Merci du fichier

La liste des clés disponibles se trouve bien dans la feuille Listing Clefs et Cartes ?
Lorsque vous entrez une clé, à quoi correspond le Nom (colonne C) dans la feuille gestion des clefs

Aussi une chose, vous ajoutez toujours les clés dans la tableau. Donc on ne supprime jamais rien. Juste ?

en fait le listing clef carte est juste un rappel, aucunes suppression cela sert de registre.

la colonne c et d importe peu, seul le numéro de clefs colonne b ne peut pas être en doublon sauf si la colonne e est rempli

Ok pour vos explications

Suggestions :
- Puis je modifier votre tableau. Je suggère de le mettre en format tableau structuré
- Actuellement dès que vous entrez une donnée, elle est automatiquement introduite dans la feuille. ne serait-ce pas mieux que l'ajout de données soit uniquement effectué lorsque vous cliquez sur le bouton Enregistrement

Si ok, je vous prépare votre fichier dans ce sens avec bien sûr le traitement de vos doublons demandé

pas de souci si ca peut améliorer la chose je suis preneur, par contre si vous pouvez y insérer une explication que j'apprenne de mes erreurs, c cool, merci

Dans la feuil gestion clefs, vous avez mis un code d'enregistrement automatique après un certain délai.
Y a-t-il une raison spéciale pour que vous utilisiez ce code car d'autres choix sont disponibles pour évitez l'instruction Application.ontime

- Savez-vous qu'il existe une fonction disponible dans les options d'excel.
- vous pourriez aussi enregistrer automatiquement à la fermeture du fichier

je ne savais pas, j ai mis ça en place pour éviter que je perdent des données en cas de bug

j ai mis ça en place pour éviter que je perdent des données en cas de bug

Ok je comprends.

Voici votre fichier en retour pour ce qui concerne la feuille Gestion des clefs
J'ai apporté les changements suivants sur cette feuille
- Mise en forme du tableau en format structuré
- le nom "Tab_GestClefs" est attribué dans Formule -> gestionnaire de noms
- Userfom1 :
---> Modifié le code Enregistrement
---> Supprimé les codes Textbox3 et Textbox4 change
---> Ajouté le contrôle des doublons dans le code Textbox2 Change

Attention très important
, si vous devez supprimer des lignes dans le tableau de la feuille Gestion clefs, veillez à toujours procéder comme suit :
- Sélectionner les lignes à supprimer entre les colonnes A et E (donc jamais de sélection en dehors du tableau)
- Click droite sur les lignes à supprimer
- Choisir l'option "Supprimer" --> "Lignes de tableau"

Pour l'enregistrement automatique du fichier, j'ai déplacé les deux codes des feuilles Gestion Clefs et cartes dans Thisworkbook. Du coup un seul code est utilisé au lieu de deux

Si ok pour cette feuille je peux continuer pour la feuille Gestion Cartes si cela vous intéresse

c'est super oui je veux bien, par contre je scanne les numeros de clefs avec code barre, et comme la 1 c'est "001", il me l'affiche en" 1" et du coups le retour ne fonctionne pas

il me l'affiche en" 1" et du coups le retour ne fonctionne pas

Ok mais je dois modifier le code car là le chiffre devra être au format texte que ce soit lors de l'ajout ou lors du retrait
En gros si vous tapez 1, il faudra que la feuille mette 001, ect...
Idem pour le retour

je vais voir ce point

Au fait Dans gestion des cartes il n'y a que 4 colonnes ? Juste ?

petite question quand j'essaye de bloquer les pages pour éviter les motif in intentionnelles ca ne rempli plus le tableau.

Private Sub Workbook_Open()

Worksheets("gestion des clefs").Protect Password:="Password", UserInterfaceOnly:=True
Worksheets("gestion des cartes").Protect Password:="Password", UserInterfaceOnly:=True
Worksheets("GESTION").Protect Password:="Password", UserInterfaceOnly:=True
Worksheets("Listing Clefs et Cartes").Protect Password:="Password", UserInterfaceOnly:=True
End Sub

est ce normal?

oui pour les cartes 4 colonnes

petite question quand j'essaye de bloquer les pages pour éviter les motif in intentionnelles ca ne rempli plus le tableau.

Oui logique. Si vous modifiez le tableau il faut déprotéger avant et reprotéger après

c bon j'ai désactivé la protection a l'ouverture de l userform et je la réactive a la fermeture, et ca marche, oui je l'avais enlever a l'envoi du fichier

avant cela fonctionnait

Non du tout ou en tout cas pas dans le fichier posté. Il n'y avait rien à ce sujet
Mais ce n'est pas compliqué, il suffit d'ajouter deux instructions dans les codes

edit

non vu que c le retour pas besoin du nom, ce n'est pas dans l 'ordre désolé

Votre fichier en retour pour la gestion cartes

Cordialement

Rechercher des sujets similaires à "doublons entree userform"