VBA question basique sur if then sur valeurs nulles (novice)

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

N

needz

Guest
Bonjour à tous

Je cherche juste à rajouter au début d'une macro la condition "si ma plage de cellule ne contient que des valeurs nulles alors MsgBox + Exit Sub sinon continuer la procédure de la macro.

Comme je suis pas très fort voilà ce que ça donne :
Code:
If Range("G6").Value = 0 & Range("H6").Value = 0 & Range("I6").Value = 0 & Range("J6").Value = 0 Then
MsgBox ("Vous n'avez pas exécuté correctement l'analyse. Veuillez reprendre la procédure")
Exit Sub
Else
End If

Et bien sûr ça marche pas... Quelqu'un pourrait m'aider pour cette manip sûrement très simple (avec quelques explications si vous avez le temps).

Merci à vous.
 
Re : VBA question basique sur if then sur valeurs nulles (novice)

Salut needz, le Forum

As tu essayer de remplacer les & par And ou par des Or ?

Code:
If Range("G6").Value = 0 [B]And [/B]Range("H6").Value = 0 [B]And[/B] Range("I6").Value = 0 [B]And [/B]Range("J6").Value = 0 Then
MsgBox ("Vous n'avez pas exécuté correctement l'analyse. Veuillez reprendre la procédure")
Exit Sub
Else
MsgBox ("Vous avez correctement exécuté l'analyse.")
End If
a tester

EDITION: Salut FG 🙂 même idée 😀

Bonne Journée
 
Dernière édition:
Re : VBA question basique sur if then sur valeurs nulles (novice)

Bonjour needz,
En macro on utilise And à la place de &. Il n'y a pas besoin du else:
Code:
[COLOR=blue]Sub[/COLOR] needz()
[COLOR=blue]If[/COLOR] Range("G6").Value = 0 [COLOR=blue]And[/COLOR] Range("H6").Value = 0 [COLOR=blue]And[/COLOR] Range("I6").Value = 0 [COLOR=blue]And[/COLOR] Range("J6").Value = 0 [COLOR=blue]Then[/COLOR]
    MsgBox ("Vous n'avez pas exécuté correctement l'analyse. Veuillez reprendre la procédure")
    [COLOR=blue]Exit Sub[/COLOR]
[COLOR=blue]End If[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Si le fait qu'une seule cellule soit vide doit faire sortir de la macro, il faut utiliser Or (ou) à la place de And.
Cordialement
EDIT Bonjour DULL🙂, mêmes posts 😛
 
Re : VBA question basique sur if then sur valeurs nulles (novice)

Bon bah comme quoi ... lol j'ai vraiment besoin de plus de bases.
Merci beaucoup pour vos réponses.

Quelle serait la méthode la plus efficace pour coder cette procédure ? j'imagine qu'on peut aussi directement demander ça pour la plage (H6:J6) sans passer par des And fastidieux.

En tout cas une fois encore merci pour la rapidité de vos réponses.

Un newbie du VBA
 
Re : VBA question basique sur if then sur valeurs nulles (novice)

Bonjour à tous
Si les valeurs attendues dans la plage H6:J6 sont numériques :
Code:
[COLOR=DarkSlateGray][B]If WorksheetFunction.SumProduct(Range("H6:J6"), Range("H6:J6")) = 0 Then MsgBox "Vous n'avez pas exécuté correctement l'analyse. Veuillez reprendre la procédure": Exit Sub[/B][/COLOR]
ROGER2327
#4445


Lundi 2 As 138 (Sainte RroSainte Sélavy, héroine, SQ)
14 Brumaire An CCXIX
2010-W44-4T11:31:18Z
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
385
Réponses
5
Affichages
907
Réponses
2
Affichages
411
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
903
Réponses
2
Affichages
769
Réponses
4
Affichages
586
Retour