La colonne B de ce tableau est incrémenté par l'appel d'un UserForm dans lequel il y a un TextBox ou je saisie des noms, bien sûr si je lance la macro le doublon est effacé.
Je voudrai détecter ce doublon dès la validation du nom dans le UserForm pour informer l'utilisateur que le nom existe déjà.
Function ExisteDansTableau(Valeur As Variant) As Boolean
ExisteDansTableau = Application.CountIf(Worksheets("Feuil1").Range("Tableau").Range("B:B"), Valeur) > 0
End Function
Utilisation possible:
Code:
If ExisteDansTableau(LeTextBox.Text) then
msgbox "Cette valeur existe déjà"
Else
'....J'ajoute la valeur au tableau
End if
Bonjour Hasco, merci pour ta rapide réponse, ce code je le met dans le code du UserForm après le code du bouton valider ?
Code:
'Bouton Valider
Private Sub UserForm_Activate()
Ton code:
Code:
Function ExisteDansTableau(Valeur As Variant) As Boolean
ExisteDansTableau = Application.CountIf(Worksheets("Feuil1").Range("Tableau").Range("B:B"), Valeur) > 0
End Function
La function 'ExisteDansTableau' peut être mise dans un module de code indépendant ou dans le module de code du userFom, dans un module indépendant elle a l'avantage de pouvoir être appelé de n'importe où dans le code.