Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

  • Initiateur de la discussion Initiateur de la discussion bibbip35
  • Date de début Date de début

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 !

bibbip35

XLDnaute Occasionnel
Bonjour a tous

Je me permets de venir vous, car je suis a la recharche d'une solution
pour avoir 1 msgbox lorsque la valeur rensignée dans 1 combobox n'existirait pas
dans 1 colonne ( Base de donnée - colonne A )

J'utilise 1 userform pour ajouter 1 ligne et de nouvelle info. ( Type formulaire de saisie )
L'idée sera lorsque je valide

Si la valeur existe, la validation serait OK et la ligne serait créee
Si la valeur n'existe pas l'idée , serait d'interompre l'opération

Merci a tous pour votre aide bienvennue

Bibbip35
 
Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Bonsoir Bipbip, bonsoir le forum,

Un petit fichier exemple ne t'aurais pas tué Bipbip et nous aurait éviter de le créer pour te proposer des solution !
En pièce jointe (parce que moi j'ai pas eu la flemme...) 3 options pour surmonter ton problème.
• Regarde la propriété [MatchRequired] = true de la ComboBox1
si tu tapes une valeur n'appartenant pas à la liste en colonne A tu auras un message
• Regarde la propriété [Style] = 2 - fmStyleDropDowsList de la ComboBox2
tu ne peux même pas taper autre chose que ce qui est dans la liste...
le code pour la ComboBox3 sur le bouton Valider :
Code:
Private Sub CommandButton1_Click() 'bouton "Valider"
Dim R As Range 'déclare la variable R (Recherche)
If Me.ComboBox3.Value <> "" Then 'condition 1 : si la ComboBox3 né st pas vide
    Set R = PL.Find(Me.ComboBox3.Value, , xlValues, xlWhole) 'définit la recherche R (recherche l valeur de la ComboBox3 dans la plage pl)
    If R Is Nothing Then 'condition 2 : si aucune occurrence n'est trouvée
        MsgBox "Donnée Inexistante dans la colonne A !" 'message
        With Me.ComboBox3 'prend en compte la ComboBox3
            .SetFocus 'place le surseur
            'sélectionne le texte
            .SelStart = 0 'début de la sélection
            .SelLength = Len(.Value) 'longeur de la sélection
        End With 'fin de la prose en compte de...
        Exit Sub 'sort de la procédure
    End If 'fin de la condition 2
End If 'fin de la condition 1
'reste du code ici...
Unload Me 'vide et ferme l'UserForm
End Sub
les 3 combobxes sont alimentées dynamiquement à l'initialisation de l'UserFomr par :
Code:
Option Explicit
Private PL As Range

Private Sub UserForm_Initialize()
Dim O As Object
Dim DL As Long

Set O = Sheets("Feuil1")
DL = O.Cells(Application.Rows.Count, 1).End(xlUp).Row
Set PL = O.Range("A2:A" & DL)
Me.ComboBox1.List = PL.Value
Me.ComboBox2.List = PL.Value
Me.ComboBox3.List = PL.Value
End Sub

Le fichier :
 

Pièces jointes

Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Merci Robert pour ton fichier & ton exemple

Je suis désolé de ne pas avoir fourni 1 fichier exemple...Ce n'était pas très malin de ma part
Mais le souci est que c'est 1 fichier de travail donc relativement confidentiel ( J'ai donc supprimer les données "sensible" en PJ )

Le fichier fournit, par Robert mais je n'arrive pas a intégreer le code a mon fichier
=> Feuille " Config. ligne"
=> Colonne " VZ"

Merci en tous cas pour votre aide

Bibbip35
 

Pièces jointes

Dernière édition:
Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Bonjour Bipbip, bonjour le forum,

Je ne comprends rien Bipbip ! Tu me dis Colonne VZ et quand je regarde le code du même fichier tu écris :
Code:
If ComboBox1 <> Range("UW2") And ComboBox1 <> Range("UX2") And ComboBox1 <> Range("UY2") And ComboBox1 <> Range("UZ2") And ComboBox1 <> Range("VA2") And ComboBox1 <> Range("VB2") And ComboBox1 <> Range("VC2") And ComboBox1 <> Range("VD2") And ComboBox1 <> Range("VE2") And ComboBox1 <> Range("VF2") And ComboBox1 <> Range("VG2") And ComboBox1 <> Range("VH2") Then
MsgBox "La ligne renseignée n'existe pas sur le pôle Energie", vbCritical, "Données incorrect"
Pas vraiment en rapport avec la colonne VZ !
Ensuite tu ne précise pas de quelle combobox il s'agit ? À nous de nous débrouiller...
L'alimentation de la ComboBox1 me semble aussi très bizarre. Tu utilises avec la propriété [RowSource] la plage A7:A1396 de l'onglet Config. ligne c'est incompréhensible.

Pourrais-tu faire l'effort d'expliquer ce que tu veux précisement...
 
Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Bonjour Bipbip, bonjour le forum,

En prenant le temps de regarder code et fichier il me semble avoir mieux cerné ton problème. En pièce jointe ton fichier modifié qui plante chez moi sur la ligne :
Code:
Select Case Me.ComboBox1.Value
    Case O.Range("UW2").Value, O.Range("UX2").Value, O.Range("UY2").Value, O.Range("UZ2").Value, O.Range("VA2").Value, O.Range("VB2").Value, O.Range("VC2").Value, _
       O.Range("VD2").Value, O.Range("VE2").Value, O.Range("VF2").Value, O.Range("VG2").Value, O.Range("VH2").Value
    Case Else
        MsgBox "La ligne renseignée n'existe pas sur le pôle Energie", vbCritical, "Données incorrect"
        Exit Sub
End Select
car je n'ai pas toutes les données et ces cellules indiquent #REF!.
J'ai rajouté un module de classe TBN pour éviter de répéter 4 fois le même code...
le fichier :
 

Pièces jointes

Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Bonjour

Tous d'abord merci pour la grande aide apportée et vraiment désolé en effet du manque d'explication
Je vais essayer de faire mieux...

J'ai essayé le fichier mais sans succès...Je pense que c'est moi qui n'a pas compris en faite😕

L'objectif étant pour moi finalement

Qd j'ouvre l'userfom par le biais du racourci présent sur la fenêtre

Puis QD je rempli la combobox3 ; je souhaiterais avant validation de l'userform avoir 1 msgbox
me prevenant que la valeur saisie n'existe pas dans la colonne VZ et si c'est le cas interdire la validation finalement

En tous cas 1 grand merci pour l'aide

P.S. : Désolé , mais je suis débutant en VBA , d'ou mes questions....

Bonne soirée
 
Re : Msgbox si valeurcombobox n'existe pas d'ans 1 colonne

Bonsoir Bipbip, bonsoir le forum,

Comme je t'ai dit au début, chez moi ça plante aussi mais c'est parce que tu envoies un fichier qui doit faire des liaisons et je n'ai pas le fichier source...
Je pensais que chez toi (avec le fichier source) ça marcherait... Désolé aussi...
 
- 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

Retour