Aide si cellule non vide cellule à gauche non vide

Bonjour à tous

j'utilise un bout de code vba pour trouver dans une zone chaque cellule contenant une valeur.

Je voudrais pouvoir vérifier que pour chaque cellules contenant une valeur, la cellule de gauche correspondante n'est pas vide.

Voici pour le moment le code que j'utilise

Sub test()
Sub test()
'cherche valeur dans la plage1
    Set CellTest = Range("plage1").Find(What:="*", LookIn:=xlValues, LookAt:=xlWhole)
        'si une valeur est trouvée
        If Not CellTest Is Nothing Then
            'on mémorise l'adresse de la première occurence trouvée
            AdresseCell = CellTest.Address
            Do
                'on mémorise l'adresse de la cellule située à gauche de la mesure trouvée
                Resultat = Resultat & CellTest.Address & " - "
                'on continue la recherche
                Set CellTest = Range("plage1").FindNext(CellTest)
            'tant qu'on trouve une valeur et que l'occurence trouvée est différente de la première occurence trouvée
            Loop While Not CellTest Is Nothing And CellTest.Address <> AdresseCell
             'affichage du résultat
            MsgBox "cellules trouvées " & Resultat
        End If
End Sub
End Sub

et je joint un fichier pour exemple

18test.xlsm (16.94 Ko)

Merci pour votre aide

Bonjour,

un essai :

Sub test()

    Dim Plage As Range, Cel As Range, Résultat As String
    Set Plage = ActiveSheet.Range("Plage1")

    For Each Cel In Plage
        If Cel.Value <> "" Then
            If Cel.Offset(, -1).Value = "" Then Résultat = Résultat & Cel.Offset(, -1).Address & Chr(10)
        End If
    Next

    MsgBox ("Liste des cellules vide avec une valeur en colonne B :" & Chr(10) & Résultat)

End Sub

Pour mon test et je vous conseil d'en faire autant, j'ai supprimé les colonnes B et C, à première vue il n'est pas util d'avoir trois colonnes pour afficher une seule donnée... Si ce n'est pas assez large, alors il suffit d'élargir la colonne :

mettre le curseur de la souris sur le trait qui sépare la lettre A et B des entêtes de colonne, un trait noir avec deux flèches s'affiche, il suffit alors de cliquer gauche et de maintenir et de se déplacer dans un sens ou dans l'autre pour ajuster la largeur de la colonne qui se trouve à gauche du trait, cela marche également avec les lignes.

vbMBHB

Merci pour votre aide

J'ai retravaillé votre solution pour qu'elle réponde un peu plus à mes attente au final mon code ressemble à ça

Sub test()
    Dim Plage As Range, Cel As Range, Résultat As String
    Set Plage = ActiveSheet.Range("Plage1")

    For Each Cel In Plage
        If Cel.Value <> "" Then
            If Cel.Offset(, -3).Value = "" Then
                Résultat = Résultat & Cel.Offset(, -3).Address & Chr(10)
            End If
        End If
    Next
    If Résultat <> "" Then
        MsgBox ("Liste des cellules vide avec une valeur en colonne D :" & Chr(10) & Résultat)
    Else
        MsgBox "suite de la procédure"
    End If
End Sub

J'ai modifié l'offset pour pouvoir travaillé sur des cellules fusionnées car j'ai besoin de conserver cette mise en page.

Encore merci votre solution m'a bien aidé

Merci

vbMBHB

Rechercher des sujets similaires à "aide vide gauche"