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

Bonsoir Imrane,
Peut être en modifiant le début de Worksheet_SelectionChange dans la feuille Livraison :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Not Intersect([H7:H35], Target) Is Nothing Then
        Magasin = Cells(Target.Row, "D")                                                ' Mémorisation du magasin
        If Magasin <> "" And Application.CountIf([E59:E64], Magasin) > 0 Then           ' Si magasin présent dans la liste
            Qté = Application.VLookup(Magasin, [E59:F64], 2, False)                     ' Vérification quantité disponible
            If Qté < Target Then MsgBox " ATTENTION il faut changer de depôt": Exit Sub ' Alerte si Qté demandée supérieure à quantité disponible
        End If
        Application.OnKey Key:="~", procedure:="retour_colonneC"
    End If
Après le message d'alerte on sort de la sub. A modifier si non désiré.
 
BONJOUR Sylavnu, le forum

Merci votre réponse je viens d inserrer le code [ ] il marche mais le messagebox doit être active lors de la saisie du nombre carton dans la collone "H7:H35" et nom pas en cliquant sur la cellule après car d habitue je ne clic pas sur la cellule après la saisie du nombre de cartons je passe directement a un autre article dans la collone (C5:C37) en cilquant sur ENTRE.


.

 
Bonjour,
Dans ce cas il faut intégrer la modif dans Worksheet_Change.
VB:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    ' Vérification du stock vs le dépot
    If Not Intersect([H7:H35], Target) Is Nothing Then
        Magasin = Cells(Target.Row, "D")                                                ' Mémorisation du magasin
        If Magasin <> "" And Application.CountIf([E59:E64], Magasin) > 0 Then           ' Si magasin présent dans la liste
            Qté = Application.VLookup(Magasin, [E59:F64], 2, False)                     ' Vérification quantité disponible
            If Qté < Target Then MsgBox " ATTENTION il faut changer de depôt": Exit Sub ' Alerte si Qté demandée supérieure à quantité disponible
        End If
    End If
    
    Dim Colonne As Integer
    Dim Adresse As String
    ... suite du code
S'il y a alerte je sors de la macro. Si non désiré, supprimez le "Exit sub"
 
Re,
Je n'ai pas le même comportement que vous, regardez ce gif, pour moi c'est ok.
Test4.gif
 
- 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
4
Affichages
128
Réponses
3
Affichages
136
Réponses
0
Affichages
66
Réponses
4
Affichages
677
  • Question Question
XL 2016 Tournoi
Réponses
6
Affichages
161
Réponses
2
Affichages
104
Deleted member 453598
D
  • Question Question
Microsoft 365 Mediane occupation
Réponses
6
Affichages
125
Réponses
3
Affichages
114
Réponses
4
Affichages
97
Réponses
3
Affichages
139
  • Question Question
XL 2010 excel 2010
Réponses
2
Affichages
570
Réponses
3
Affichages
115
Retour