XL 2010 [Résolu] Condition et lancement macro

Saxophone

XLDnaute Nouveau
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.
 

Jacky67

XLDnaute Accro
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:

Discussions similaires


Haut Bas