Je suis en train de pleurer tellement ça doit être simple mais...
Je cherche à mettre en place une MsgBox lorsque l'on clique sur le nom d'une feuille.
J'ai trois feuille dans mon classeur : Feuil1, Feuil2 et Feuil3.
J'aimerais qu'une MsgBox s'affiche lorsque l'on clique sur le Feuil2 avant de commencer à travailler dessous.
Voici le code que j'utilise dans Feuil2 :
Private Sub Worksheet_Activate()
MsgBox("Ne pas oublier de remplir :" & Chr(10) & "1. la Date" & Chr(10) & "2. le Lieu" & Chr(10) & "3. le Budget HT", vbMsgBoxSetForeground + vbOKOnly + vbExclamation, "Plan de tir")
End Sub
Le problème est qu'Excel me dit "Erreur de compilation. Attendu:=".
Mais pourquoi ?
Résultat, je ne sais même pas si la MsgBox pourra bien s'afficher lorsque l'on va cliquer sur le "Feuil2".
Pour répondre à tes questions, je ne préfère pas car cela risque de ne pas être effectué par les utilisateurs du fichier.
En effet, je veux qu'ils soient avertis dès le début de l'obligation de saisie dans la feuille. Au sortir de la feuille, ils peuvent toujours continuer le travail sans ces informations. Trop grand risque.
Après je suis OK avec toi sur le principe.
Cependant, existe-t-il une méthode pour vérifier si telle ou telles cellules sont "non vide" ?
RE...
A cette question, le réponse est OUI
Par exemple
If [LaCellule]="" then.....
LaCellule =A1 ou B1 ou etc.....
L'idéale pour alimenter une feuille ou une base de donnée étant l'utilisation d'un unserform, mais cela, c'est un autre sujet.
J'ai donc fait cela :
Private Sub Worksheet_Activate()
If Range("B1") = "" Then
MsgBox "La date n'est pas siaise !", vbMsgBoxSetForeground + vbOKOnly + vbExclamation, "Plan de tir - DATE MANQUANTE"
Else
End If
If Range("B2") = "" Then
MsgBox "Le lieu n'est pas siaise !", vbMsgBoxSetForeground + vbOKOnly + vbExclamation, "Plan de tir - LIEU MANQUANT"
Else
End If
If Range("N1") = "" Then
MsgBox "Le budget HT n'est pas siaise !", vbMsgBoxSetForeground + vbOKOnly + vbExclamation, "Plan de tir - BUDGET HT MANQUANT"
Else
End If
Re...
C'est presque cela , sauf à mettre sur l'instruction Deactivate
Ainsi, si les cellules ne sont pas saisie, impossible de quitter la feuille.
Très sommairement, comme en PJ
*Pj modifié