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

XL 2021 Combobox vide

  • Initiateur de la discussion Initiateur de la discussion Did25
  • 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 !

Did25

XLDnaute Occasionnel
Bonjour le Forum ,j'utilise une formule dans un Userform mais je souhaiterais qu'elle se lance que si les 2 combobox soit renseignées ;Merci de votre aide

VB:
Private Sub CommandButton6_Click()
  With Worksheets("Calcul5").Activate
  Range("G26").Select
  Range("G26").Value = ComboBox1.Value
  Range("E26").Select
  Range("E26").Value = ComboBox2.Value
  TextBox1.Value = Range("B27").Value
  End With
  With Worksheets("Cajc").Activate
  Range("A1").Select
  End With
  If MsgBox("Année de début de planning : " & ComboBox1 & " ,votre date de fin de planning : " & TextBox1 & " ,votre choix d'équipe  : " & ComboBox2 & " ,vos choix ont été pris en compte ,souhaitez vous les changer ?.", vbYesNo + vbQuestion, "Application des valeurs ") = vbNo Then
    Unload Me
    Exit Sub
    End If
End Sub
 
Solution
Bonjour,
Si j'ai bien compris la demande:
VB:
Private Sub CommandButton6_Click()
    With Worksheets("Calcul5")
        Select Case True
        Case ComboBox1 = "": MsgBox "Le Combo1 doit être renseigné": Exit Sub
        Case ComboBox2 = "": MsgBox "Le Combo2 doit être renseigné": Exit Sub
        Case Else
            .Activate
            Range("G26").Value = ComboBox1.Value
            Range("E26").Value = ComboBox2.Value
            TextBox1.Value = Range("B27").Value
            Worksheets("Cajc").Activate: Range("A1").Select
            If MsgBox("Année de début de planning : " & ComboBox1 _
             & " ,votre date de fin de planning : " & TextBox1 _
             & " ,votre choix d'équipe  : " & ComboBox2 _
             & "...
Bonjour,
Il suffit d'ajouter en début de procédure un test sur la valeur des ComboBox qui provoque la sortie (Exit Sub) dans le cas où au moins une de deux combos est vide.
Cordialement,
 
Bonjour,
Il suffit d'ajouter en début de procédure un test sur la valeur des ComboBox qui provoque la sortie (Exit Sub) dans le cas où au moins une de deux combos est vide.
Cordialement,
Bonjour Gégé-45550 , merci de votre explication mais je ne maitrise pas assez pour intégré la procédure de test ,j'ai fait des essais et des recherches mais pas vraiment concluant .
 
Bonjour Did25

Quand on se lance dans le développement, on apprend les bases avant 🙄
VBA = développement objet

Voilà le code modifié
VB:
Private Sub CommandButton6_Click()
  With Worksheets("Calcul5")
    .Range("G26").Value = Me.Combobox1.Value
    .Range("E26").Value = Me.Combobox2.Value
    If Me.Combobox1 <> "" And Me.Combobox2 <> "" Then
      Me.TextBox1.Value = .Range("B27").Value
    End If
  End With
  With Worksheets("Cajc")
    .Activate
    .Range("A1").Select
  End With
  If MsgBox("Année de début de planning : " & Combobox1 & " ,votre date de fin de planning : " & TextBox1 & " ,votre choix d'équipe  : " & Combobox2 & " ,vos choix ont été pris en compte ,souhaitez vous les changer ?.", vbYesNo + vbQuestion, "Application des valeurs ") = vbNo Then
    Unload Me
    Exit Sub
  End If
End Sub

A+
 
Bonjour wDog66 , merci de votre aide ,j'ai testé votre code et je constate que la procédure se lance quand même
 
Bonjour,
Si j'ai bien compris la demande:
VB:
Private Sub CommandButton6_Click()
    With Worksheets("Calcul5")
        Select Case True
        Case ComboBox1 = "": MsgBox "Le Combo1 doit être renseigné": Exit Sub
        Case ComboBox2 = "": MsgBox "Le Combo2 doit être renseigné": Exit Sub
        Case Else
            .Activate
            Range("G26").Value = ComboBox1.Value
            Range("E26").Value = ComboBox2.Value
            TextBox1.Value = Range("B27").Value
            Worksheets("Cajc").Activate: Range("A1").Select
            If MsgBox("Année de début de planning : " & ComboBox1 _
             & " ,votre date de fin de planning : " & TextBox1 _
             & " ,votre choix d'équipe  : " & ComboBox2 _
             & " ,vos choix ont été pris en compte ,souhaitez vous les changer ?.", _
             vbYesNo + vbQuestion, "Application des valeurs ") _
             = vbNo Then
                Unload Me
                Exit Sub
              End If
        End Select
    End With
End Sub
 
Re,
C'est ce que j'ai fait il me semble... petit rappel de votre demande


Donc exprimez votre besoin correctement, la langue française est riche 🙄
Je me suis peut-être mal exprimé ,dans un formulaire ,j'utilise un bouton qui inscrit des données choisies dans 2 combobox sur une feuille de mon fichier.Je souhaiterais que la procédure ne fonctionne que si les 2 champs soient renseignés ,sinon est-ce possible de prévoir une MsgBox pour signifier que les champs sont vides .
 
bonjour
quand on doit tester deux controls éventuellement vide on n'utilise pas "And" mais Or
car l'un va a l'encontre de lautre
VB:
Private Sub CommandButton6_Click()
    If Me.Combobox1 = "" Or Me.Combobox2 = "" Then MsgBox " veuilles choisir dans les combo (1 et 2)": Exit Sub
    With Worksheets("Calcul5")
        .Range("G26").Value = Me.Combobox1.Value
        .Range("E26").Value = Me.Combobox2.Value
        Me.TextBox1.Value = .Range("B27").Value
    End If
End With
With Worksheets("Cajc")
    .Activate
    .Range("A1").Select
End With
If MsgBox("Année de début de planning : " & Combobox1 & _
       " ,votre date de fin de planning : " & TextBox1 & _
       " ,votre choix d'équipe : " & Combobox2 & _
       " ,vos choix ont été pris en compte ,souhaitez vous les changer ?.", vbYesNo + vbQuestion, "Application des valeurs ") = vbNo Then
    Unload Me
    Exit Sub
End If
End Sub
@fanch55 on c'est croisé 😉
 
Merci pour votre solution ,c'est parfait et merci aussi à patricktoulon et aussi le forum 😀
 
- 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
3
Affichages
193
Réponses
1
Affichages
180
Réponses
2
Affichages
461
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Réponses
2
Affichages
511
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…