Boîte de dialogue

Bonjour,

J'ai fais ce code et j'ai mis une boîte de dialogue qui fonctionne.

Mais le soucis, c'est que j'aimerai que cette boîte de dialogue sois plus grande pour afficher tout les défauts, au lieu de m'afficher un défaut et de devoir cliquer sur ok à chaque fois.

Je sais pas si vous m'avez compris

Merci pour votre aide

voici le code :

Option Explicit
Option Base 1
Sub IF_test()

'déclaration des variables

Dim Madate As Date
Dim valeur As String
Dim Ligne As Byte, Colonne As Byte

For Colonne = 2 To 45

Madate = Cells(50, Colonne).Value

For Ligne = 2 To 49
valeur = Cells(Ligne, 1).Value

If Madate >= Cells(Ligne, Colonne).Value Then
Cells(51, Colonne).Value = "à Jour"
Else: Cells(51, Colonne).Value = "Pas à jour"
valeur = Cells(Ligne, 1).Value
MsgBox " Le " & valeur & " a été révisé après le " & Cells(1, Colonne).Value
Exit For
End If
Next Ligne
Next Colonne

End Sub

Bonjour ScarYz

Peut-être quelque chose comme cela

Je ne peux pas tester.

Bonne soirée

Sub IF_test()

'déclaration des variables

Dim Madate As Date
Dim valeur As String
Dim Ligne As Byte, Colonne As Byte
Dim Erreurs As String
For Colonne = 2 To 45

    Madate = Cells(50, Colonne).Value

    For Ligne = 2 To 49
        valeur = Cells(Ligne, 1).Value

        If Madate >= Cells(Ligne, Colonne).Value Then
            Cells(51, Colonne).Value = "à Jour"
        Else: Cells(51, Colonne).Value = "Pas à jour"
            valeur = Cells(Ligne, 1).Value
            Erreurs = Erreurs & " Le " & valeur & " a été révisé après le " & Cells(1, Colonne).Value & Chr(13)
            Exit For
        End If
    Next Ligne
Next Colonne
MsgBox Erreurs
End Sub

Bonjour Patty5046

Le code fonctionne à merveille je te remercie pour ton aide !

Salutations distinguées,

Mais j'ai juste une question, comment cela se fait t'il que votre code les affiches d'un coup, alors que le mien il devait ouvrir une boîte de dialogue à chaque fois qu'il y avait une erreur ?

Respectueusement,

Bonjour ScarYz

Erreurs = Erreurs & " Le " & valeur & " a été révisé après le " & Cells(1, Colonne).Value & Chr(13)

Comme tu vois là, je cumule tous les messages à la suite les uns des autres dans "Erreurs".

Chr(13) :

Cela permet de faire un saut à la ligne à chaque fois.

Bonne journée

D'accord je vous remercie pour vos explications.

Passez une bonne journée.

Juste une dernière petite question qui m'aiderai à comprendre.

Pourquoi le fait d'avoir crée une variable "Erreur" permert de faire afficher les messages à la suite ?

Merci pour votre temps

Bonsoir

Au lieu d'afficher les messages un par un, je les cumule dans une variable et je rajoute à chaque fois un saut de ligne Chr(13) pour que ce soit lisible.

Ensuite j'affiche cette variable une fois la boucle terminée.

D'accord c'est clair merci beaucoup !

Rechercher des sujets similaires à "boite dialogue"