Afficher msgbox avec test valeurs cellules

Bonjour à tous,

Dans mon fichier, je cherche à vérifier que mes collaborateurs ont renseigné les champs obligatoires dans des cellules. Si ce n'est pas le cas, avant d'exécuter la macro "Valider", j'affiche un msgbox avec les erreurs à traiter

Sub Valider()

If Range("A1") ="" then
msgbox "Renseignez le nom de la ville"
Elseif Range("A2") ="" then
msgbox "Renseignez le nom du département"
Elseif Range("A3") ="" then
msgbox "Renseignez le nom de la région"
Elseif Range("A4") ="" then
msgbox "Renseignez le code Insee"
End if

'macro suivante 
End Sub

Le souci c'est que si aucun champ n'a été renseigné, tous les msgbox vont s'afficher les uns après les autres au fur et à mesure de la saisie.

Comment faire pour afficher tout sur le même msgbox en fonction de ce qui doit apparaitre en msgbox ou non?

exemple1: si toutes les cellules de A1 à A4 sont vides

image

exemple2: si toutes les cellules de A1 à A3 sont vides

image

exemple3: si les cellules de A2 à A3 sont vides

image

Merci à celles et ceux qui pourront m'aider :)

JB

Hello,

A tester

Sub Valider()

Texte = ""

if Range("A1") ="" then Texte = "Renseignez le nom de la ville" & Chr(10)
if Range("A2") ="" then Texte = Texte & "Renseignez le nom du département" & Chr(10)
if Range("A3") ="" then Texte = Texte & "Renseignez le nom de la région" & Chr(10)
if Range("A4") ="" then Texte = Texte & "Renseignez le code Insee"

Msgbox(Texte)

End Sub

@+

Bonjour BAROUTE78,

C'est top !!! Par contre si tous les champs sont renseignés, j'ai quand même un msgbox qui s'affiche car on le définit à "vide" en début de macro.

Comment s'en affranchir ?

Merci encore !

JB

Hello,

La correction :)

Sub Valider()

Texte = ""

if Range("A1") ="" then Texte = "Renseignez le nom de la ville" & Chr(10)
if Range("A2") ="" then Texte = Texte & "Renseignez le nom du département" & Chr(10)
if Range("A3") ="" then Texte = Texte & "Renseignez le nom de la région" & Chr(10)
if Range("A4") ="" then Texte = Texte & "Renseignez le code Insee"

If Texte <> "" then Msgbox(Texte)

End Sub

@+

Ah oui tout simplement ^^ Ça fonctionne à merveille

Merci beaucoup !!

JB

Rechercher des sujets similaires à "afficher msgbox test valeurs"