XL 2019 Détecter si il y a des cellules vide

netparty

XLDnaute Occasionnel
Bonjour à tous
J'aimerais avoir votre aide pour une macro.
Je voudrais pouvoir détecter dans ma feuille si il manque des données dans les cellules de la colonne B.
Alors si il y a des cellules vide avoir un msgbox qui me donne les cellules vide.

Merci d'avance
 

Pièces jointes

  • Classeur1.xlsx
    11.7 KB · Affichages: 4

Phil69970

XLDnaute Barbatruc
Re

Et si tu veux tout dans un seul message

VB:
Option Explicit

Sub test()
Dim Derlig&, i&, Message
Derlig = Range("B" & Rows.Count).End(xlUp).Row 
For i = 8 To Derlig
    If Sheets("Import").Cells(i, 2) = "" Then
        Message = Cells(i, 2).Address & ", " & Message
    End If
Next i
MsgBox "Les cellules " & Message & " sont vides", vbCritical, "Problème !!!"

End Sub

*Merci de ton retour
Bonne fêtes

@Phil69970
 
Dernière édition:

JM27

XLDnaute Barbatruc
bonsoir
Comme cela ?
VB:
Sub test()
    Dim Derlig&, i&
    Dim Message As String
    Derlig = Range("B" & Rows.Count).End(xlUp).Row
    Range("B8:B" & Derlig).Interior.Pattern = xlNone
    For i = 8 To Derlig
        If Range("B" & i).Value = "" Then
            Message = Message & Range("B" & i).Address & ";"
            Range("B" & i).Interior.Color = 65535
        End If
    Next i
        MsgBox "Le(s) cellule(s) " & Message & " sont vide(s)", vbCritical, "Problème !!!"
End Sub

Edit : @Phil69970 : collision
 

netparty

XLDnaute Occasionnel
Re

Et si tu veux tout dans un seul message

VB:
Option Explicit

Sub test()
Dim Derlig&, i&, Message
Derlig = Range("B" & Rows.Count).End(xlUp).Row
For i = 8 To Derlig
    If Sheets("Import").Cells(i, 2) = "" Then
        Message = Cells(i, 2).Address & ", " & Message
    End If
Next i
MsgBox "Les cellules " & Message & " sont vides", vbCritical, "Problème !!!"

End Sub

*Merci de ton retour
Bonne fêtes

@Phil69970
Merci @Phil69970 c'est parfait
Bonne fêtes à toi aussi
 

netparty

XLDnaute Occasionnel
bonsoir
Comme cela ?
VB:
Sub test()
    Dim Derlig&, i&
    Dim Message As String
    Derlig = Range("B" & Rows.Count).End(xlUp).Row
    Range("B8:B" & Derlig).Interior.Pattern = xlNone
    For i = 8 To Derlig
        If Range("B" & i).Value = "" Then
            Message = Message & Range("B" & i).Address & ";"
            Range("B" & i).Interior.Color = 65535
        End If
    Next i
        MsgBox "Le(s) cellule(s) " & Message & " sont vide(s)", vbCritical, "Problème !!!"
End Sub

Edit : @Phil69970 : collision
Merci @JM27
Bonne soirée
 

Discussions similaires

Réponses
4
Affichages
217
Réponses
10
Affichages
219

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 425
Membres
103 206
dernier inscrit
diambote