VBA avec MsgBox suivant condition/1 colonne

Bonjour le forum,

J'ai essayé, en vain, de me débrouiller seul pour un code.

Il faudrait que celui-ci m'affiche une boîte de dialogue lorsqu'il apparaît, dans une colonne, le mot "ALERTE".

=> Il faut savoir que le mot "ALERTE" peut apparaître plusieurs fois dans la même colonne (J).

Je vous joins le dit fichier.

Par avance, merci pour votre aide

10forum.xlsm (591.70 Ko)

Bonjour,

Il manque un peu d'information :

  • Une boite de dialogue ok mais pour faire quoi ?
  • A quel moment cette boite dois appraître ? ( ouverture du fichier, modification d'information sur la feuille ... ? )

Par ailleurs tu peux modifier ta formule afin de ne plus avoir toutes ces erreurs sur la dernière colonne :

en I2 =SI(A2<>"";SI(ET($I$1-F2>7;$H2<3);"ALERTE";"");"")

Tout d'abord, merci pour ta réponse

Je veux que la boîte de dialogue s'ouvre dès que "ALERTE" (découlant d'une formule) s'affiche dans la colonne (que je vais masquer). Sinon, "tout simplement" une boîte de dialogue qui s'ouvre (je saurais faire sur quelle feuille et à quel moment) dès que la date sera supérieure à 7 jours à partir de AUJOURDHUI()

J'espère avoir apporté de la clarté

Tout d'abord, merci pour ta réponse

Je veux que la boîte de dialogue s'ouvre dès que "ALERTE" (découlant d'une formule) s'affiche dans la colonne (que je vais masquer). Sinon, "tout simplement" une boîte de dialogue qui s'ouvre (je saurais faire sur quelle feuille et à quel moment) dès que la date sera supérieure à 7 jours à partir de AUJOURDHUI()

J'espère avoir apporté de la clarté

Re bonjour,

Désolé je n'avais pas vu que tu voulais utiliser une "message Box" et pas une "dialogue box" la deuxième attendant une réponse

de l'utilisateur ..... d'où ma question pouquoi faire la dialogue box ?

Par ailleurs ton code worksheet_change tu l'as mis dans un module et pas dans la feuille çà ne peut donc pas fonctionner.

voir fichier en retour.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, Qui As String, Plage As String
Qui = "ALERTE"
Plage = "I2:I5000"
Set Rg = Range(Plage).Find(Qui)
If Not Rg Is Nothing Then MsgBox "chargement superieur a la capacite du vehicule" & Qui & " ici : " & Rg.Address Else Exit Sub
End Sub
11forum-retour.xlsm (588.51 Ko)

Le message apparaitra donc à chaque modification de cette page si le mot alerte est présent

Bonsoir,

je n'arrive pas à faire fonctionner ce code

la fatigue m'a peut-être fait faire une mauvaise manipulation !?

capture
Rechercher des sujets similaires à "vba msgbox suivant condition colonne"