Alerte avant validation

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chaelie2015

XLDnaute Accro
Bonjour Forum
Je souhaite afficher un message « Attention, c’est un doublon ; voulez vous contenu ? » avant la validation ,Si la valeur saisie dans le textbox1 de UserForm2 existe dans la colonne L de la feuille « BdD »
Code:
Private Sub CommandButton1_Click()

Sheets("INTERIM").Range("C8") = TextBox1.Value 
Sheets("BdD").Range("L" & Sheets("BdD").Range("L" & Cells.Rows.Count).End(xlUp).Row + 1).Select
ActiveCell.Value = TextBox1.Value & "/KDT.RH/" & Year(Date)

Unload UserForm2
End Sub
Salutations
 
Re : Alerte avant validation

Bonjour chaelie2015,

Je verrais bien quelque chose dans ce style:

Code:
Private Sub CommandButton1_Click()

Set d = Sheets("BdD").Columns(12).Find(UserForm2.TextBox1.Value, LookIn:=xlValues)
If Not d Is Nothing Then
  If MsgBox("Attention, c'est un doublon ; voulez-vous continuer ?", vbOKOnly) = vnbo Then Exit Sub
End If

Sheets("INTERIM").Range("C8") = TextBox1.Value
Sheets("BdD").Range("L" & Sheets("BdD").Range("L" & Cells.Rows.Count).End(xlUp).Row + 1).Select
ActiveCell.Value = TextBox1.Value & "/KDT.RH/" & Year(Date)

Unload UserForm2
End Sub
A +

Cordialement.
 
Re : Alerte avant validation

Bonjour le fil, bonjour le forum,

Un peu en retard !.. Tant pis j'envoie quand même...

Code:
Private Sub CommandButton1_Click()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim VC As String 'déclare la variable VC (Valeur Cherchée)
Dim R As Range 'déclare la variable R (Recherche)

Set O = Worksheets("BdD") 'définit l'onglet O
Sheets("INTERIM").Range("C8") = TextBox1.Value
VC = TextBox1.Value & "/KDT.RH/" & Year(Date) 'définit la valeur cherchée VC
Set R = O.Columns(12).Find(VC, , xlValues, xlWhole) 'définit la recherche R
If Not R Is Nothing Then 'condition 1 : si au moins une occurrence est trouvée
    'condition 2 : si "Oui" au message
    If MsgBox("Attention, c'est un doublon ! Voules-vous continer ?", vbYesNo, "ATTENTION") = vbYes Then
        'renvoie la valeur cherchée dan sla dernière ligne éditée de la colonne 12 (=L) de l'onglet O
        O.Range("L" & Application.Rows.Count).End(xlUp).Offset(1, 0).Value = VC
    End If 'fin de la condition 2
Else 'sinon (condition 1 : aucune occurrence trouvée)
    'renvoie la valeur cherchée dan sla dernière ligne éditée de la colonne 12 (=L) de l'onglet O
    O.Range("L" & Application.Rows.Count).End(xlUp).Offset(1, 0).Value = VC
End If 'fin de la condition 1

Unload UserForm2
End Sub
 
Re : Alerte avant validation

Bonjour Papou-net
merci pour la réponse et la correction, mais dans le cas ou je n'accepte pas le doublon ?
si non je reviens a mon Textbox1 pour modifier
a+
edit : Sorry Robert je n'ai pas vu ton message
 
Dernière édition:
Re : Alerte avant validation

Re,

Oui tu as raison, si tu n'acceptes pas le doublon il te faut rajouter :

Code:
With Me.TextBox1
   .SetFocus
   .SelStart = 0
   .SelLength = Len(.Value)
End With
Exit sub

avant le Unload UserForm2...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
628
Réponses
4
Affichages
728
Réponses
2
Affichages
382
Réponses
4
Affichages
607
Réponses
5
Affichages
568
Réponses
3
Affichages
901
Réponses
2
Affichages
570
Retour