MsgBox automatique

Bonjour à tous

Je souhaiterai créer une msgbox automatique qui affiche un message "Fournir arrêt de travail" lorsque la mention "EN ARRÊT" est entrée dans la colonne C du fichier joint.

Étant une bille en VBA, je viens quémander votre aide

Merci d'avance

15exemple.xlsx (12.92 Ko)

Bonjour,

A tester

31gibou.xlsm (17.57 Ko)

Merci beaucoup, ça marche super bien

Une dernière chose, à quoi correspond le chiffre dans le code "If Cells(Target.Row, 3)" s'il vous plaît ?

Merci.

Re,

le "3" représente la troisième colonne "C", si tes listes de choix sont sur la colonne "E" tu le remplace par "5"

tu peut aussi remplacer par la ligne

If Cells(Target.Row, Target.Column) = "EN ARRÊT" Then

et il te suffit de changer seulement le Target.Column=3 par le numéro de la colonne

D'accord, c'est plutôt simple

Si je peux me permettre, j'aurais une seule et dernière question... Sur mon fichier de travail, j'ai une autre macro. Lorsque j'entre celle que tu m'as faite, elle fonctionne, mais la macro qui était déjà là cesse de fonctionner Saurais-tu d'où viens le problème s'il te plaît ?

Voici la macro qui était déjà là avant :

    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim Dclo As Range, c As Range
        Set Dclo = Intersect(Target, Me.ListObjects(1).ListColumns("DATE DE CLÔTURE").Range)
        If Not Dclo Is Nothing Then
            Application.EnableEvents = False
            For Each c In Dclo
                If c.Offset(, -7) <> "" Then
                    Select Case c.Offset(, -7)
                        Case "03.DEMANDE REFUSÉE", "04. DEMANDE ANNULÉE", "07. DÉROGATION SOLDÉE"
                        Case Else
                            MsgBox "Le statut indiqué ne permet pas de clôturer.", vbInformation, _
                             "Saisie non conforme en " & c.Address(False, False)
                             c.ClearContents
                    End Select
                Else
                    MsgBox "Statut manquant : la clôture ne peut intervenir.", vbInformation, _
                     "Saisie non conforme en " & c.Address(False, False)
                    c.ClearContents
                End If
            Next c
            Application.EnableEvents = True
        End If
    End Sub

Note : ayant le même nom, j'ai modifié l'un des deux macros afin de ne pas avoir de conflit. Le problème persiste, la première macro cesse de fonctionner sans donner aucun message...

Re,

Il y a peut être contradiction entre les deux macros, mais sans classeur pour vérifier ??

Excuse-moi, j'ai édité mon message plus haut. La difficulté c'est que je ne peux pas mettre mon fichier de travail ici. Ses données ne sont pas diffusables.

J'espère que le code de ma première macro suffira

Re,

As-tu testé de mettre mon code sans leSub et End sub, à la fin de ton code, aprés le END IF

Cela m'a l'air de fonctionner, merci ! Je ne savais pas qu'il était nécessaire d'imbriquer les 2 codes.

Re,

Tu ne peut pas mettre deux fois

Private Sub Worksheet_Change(ByVal Target As Range)

sur une même feuille

le fait de les mettre à la suite, le code se déroule du début à la fin

Rechercher des sujets similaires à "msgbox automatique"