XL 2010 [Résolu] Condition et lancement macro

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

S

Saxophone

Guest
Bonsoir à tous,
Je sollicite votre aide concernant une imbrication pour lancer une macro.

VB:
Sub TestLigneMalRemplie()

Dim L&, i&, Q&, ZZ& 'déclaration des variables
L = Range("B" & Rows.Count).End(xlUp).Row 

For i = 7 To L
If Cells(i, "B") <> "" And Cells(i, "D") = "" Or Cells(i, "E") = "" Or Cells(i, "F") = "" Or Cells(i, "G") = "" Or Cells(i, "H") = "" Then
MsgBox ("Veuillez remplir toutes les informations telles :" & vbNewLine & "Date de début" & vbNewLine & "Heure de début")
Exit Sub
End If

Next


End Sub

Je souhaiterai que si le MsgBox ne se présente pas (dont qu'il n'y a pas d'erreur), une macro contenu dans le module se lance.
"Si pour chaque ligne de X à Y, toutes les cellules indiquées ne sont pas remplies : MsgBox et tout s'arrête sinon on lance la macro TEST." Le terme Next boucle et je n'arrive pas au résultat escompté.

Ou placer un ElseIf ou autre pour appeler la macro si le msgbox n'est pas apparu ?

Merci de votre aide.

Cordialement.
 
Je souhaiterai que si le MsgBox ne se présente pas (dont qu'il n'y a pas d'erreur), une macro contenu dans le module se lance.
"Si pour chaque ligne de X à Y, toutes les cellules indiquées ne sont pas remplies : MsgBox et tout s'arrête sinon on lance la macro TEST." Le terme Next boucle et je n'arrive pas au résultat escompté.

Ou placer un ElseIf ou autre pour appeler la macro si le msgbox n'est pas apparu ?

Merci de votre aide.

Cordialement.[/QUOTE]

Bonsoir,
Par exemple..
VB:
Sub TestLigneMalRemplie()
    Dim L&, i&, Q&, ZZ&    'déclaration des variables
    Dim Msg As String
    L = Range("B" & Rows.Count).End(xlUp).Row
    For i = 7 To L
        If Cells(i, "B") <> "" And Cells(i, "D") = "" Or Cells(i, "E") = "" Or Cells(i, "F") = "" Or Cells(i, "G") = "" Or Cells(i, "H") = "" Then
            Msg = ("Veuillez remplir toutes les informations telles :" & vbNewLine & "Date de début" & vbNewLine & "Heure de début")
            Exit For
        End If
    Next
    If Msg = "" Then
       Call test
    Else
        MsgBox Msg
    End If
End Sub


Sub test()
MsgBox "Ici on a lancé la macro test" ' ou tout autre code
End Sub
 
Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
627
Réponses
5
Affichages
830
Réponses
8
Affichages
744
Réponses
2
Affichages
492
Réponses
4
Affichages
688
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour