XL 2019 VBA

pat66

XLDnaute Occasionnel
Bonsoir le forum,

j'ai besoin d'aide,
voila ce que j'utilise pour indiquer qu'il faut remplir ces 4 cellules afin de pouvoir continuer à remplir le questionnaire
Est il possible de faire en sorte que si B4 = "", on va sur la cellule B4 qui est sur la feuille "coordonnees" et idem pour C4,C6 et C7

Dans tous les cas Exit Sub, si une de ces 4 cellules est vide

If Sheets("coordonnees").Range("B4").Value = "" Then MsgBox ("Veuillez indiquer la Date, la Source, le Nom et le Prénom du nouveau contact"): Exit Sub
If Sheets("coordonnees").Range("C4").Value = "" Then MsgBox ("Veuillez indiquer la Date, la Source, le Nom et le Prénom du nouveau contact"): Exit Sub
If Sheets("coordonnees").Range("C6").Value = "" Then MsgBox ("Veuillez indiquer la Date, la Source, le Nom et le Prénom du nouveau contact"): Exit Sub
If Sheets("coordonnees").Range("C7").Value = "" Then MsgBox ("Veuillez indiquer la Date, la Source, le Nom et le Prénom du nouveau contact"): Exit Sub
merci beaucoup

pat66
 
Solution
Bonsoir.
J'aurais plus vu quelque chose comme ça :
VB:
Dim Cel As Range
For Each Cel In Sheets("coordonnees").Range("B4,C4,C6,C7")
   If IsEmpty(Cel.Value) Then
      Application.Goto Cel
      MsgBox "Veuillez renseigner cette cellule", vbCritical
      Exit Sub: End If: Next Cel

Staple1600

XLDnaute Barbatruc
Bonsoir

Une base sur laquelle retravailler ton code
VB:
Sub Macro1()
Dim x
    x = Application.CountA([B4], [C4], [C6], [C7])
    Select Case x
    Case 0
    MsgBox "Achtung!,Baby", vbCritical, "Erreur"
    Case 4
    MsgBox "All is correct!", vbInformation, "Youpi"
    End Select
End Sub
 

pat66

XLDnaute Occasionnel
Bonsoir,

merci je vais tester tout ça,
une précision ce n'est que le début de la macro, après la macro continue avec
Dim ligne As Integer
Dim name As String
name = Range("c52").Value
----------
---------
J'ai remplacé End sub par Exit Sub mais la macro s'arrête même si les cellules sont remplies ?

merci
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonsoir.
J'aurais plus vu quelque chose comme ça :
VB:
Dim Cel As Range
For Each Cel In Sheets("coordonnees").Range("B4,C4,C6,C7")
   If IsEmpty(Cel.Value) Then
      Application.Goto Cel
      MsgBox "Veuillez renseigner cette cellule", vbCritical
      Exit Sub: End If: Next Cel
 

Statistiques des forums

Discussions
299 799
Messages
1 979 189
Membres
206 611
dernier inscrit
Ibrahima Ndoye