Supprimez ligne Blanche VBA Excel
Clément
-
Clément -
Clément -
Bonjour,
Je suis débutant en Visula Basic et je rencontre un problème.
J'ai une feuille de données EXCEL dans laquelle se trouve 5751 données espacées sur les colonnes "A" et AD"
A l'intérieur de ces colonnes j'ai énormément de cellules blanches et d'autres ou se trouve des données.
Le but étant de supprimez des lignes blanches à partir de la colonne E car les colonne A , B , C et D comporte la date, l'heure etc ce qui veux dire que toute la colonne est remplis donc impossible de supprimez des lignes a partir de la colonne A.
De plus la suppression de ligne blanche s'effectue que lorsqu'aucune donnée est rencontré de la colonne "E" a la colonne "AD"
Exemple:
Rappel:En partant de la colonne "E"
Si la ligne 2454 comporte une donnée dans la colonne "G"
Ne pas supprimer la ligne.
Si la ligne 2879 ne comporte aucune données
Alors supprimer la ligne.
Je dois faire ceci sous forme de Macro et je vous avouerai que sa fais 3 jours que je ne trouve pas le code a cela.
Merci de votre aide
Clément.
Je suis débutant en Visula Basic et je rencontre un problème.
J'ai une feuille de données EXCEL dans laquelle se trouve 5751 données espacées sur les colonnes "A" et AD"
A l'intérieur de ces colonnes j'ai énormément de cellules blanches et d'autres ou se trouve des données.
Le but étant de supprimez des lignes blanches à partir de la colonne E car les colonne A , B , C et D comporte la date, l'heure etc ce qui veux dire que toute la colonne est remplis donc impossible de supprimez des lignes a partir de la colonne A.
De plus la suppression de ligne blanche s'effectue que lorsqu'aucune donnée est rencontré de la colonne "E" a la colonne "AD"
Exemple:
Rappel:En partant de la colonne "E"
Si la ligne 2454 comporte une donnée dans la colonne "G"
Ne pas supprimer la ligne.
Si la ligne 2879 ne comporte aucune données
Alors supprimer la ligne.
Je dois faire ceci sous forme de Macro et je vous avouerai que sa fais 3 jours que je ne trouve pas le code a cela.
Merci de votre aide
Clément.
A voir également:
- Supprimez ligne Blanche VBA Excel
- Liste déroulante excel - Guide
- Aller à la ligne excel - Guide
- Partager photos en ligne - Guide
- Supprimer page blanche word - Guide
- Word et excel gratuit - Guide
2 réponses
Bonjour,
Voilà un exemple :
;o)
Voilà un exemple :
Sub effaceLigne()
Dim ws As Worksheet
Dim lig As Long
Dim plage As Range
'déclaration de l'objet feuille - mettre ici le numéro de la feuille à traiter.
Set ws = Worksheets(1)
'numéro de la première ligne à traiter
lig = 2
With ws
'Tant que la cellule A est vide faire
While .Range("A" & lig).Value <> ""
'Déclaration de la plage à controler
Set plage = .Range("E" & lig & ":AD" & lig)
'Appel de la fonction qui contrôle la plage
If ctrlPlage(plage) = True Then
'Si le retour de la fonction est Vrai alors
'on supprime la ligne
.Rows(lig).Delete
lig = lig - 1
End If
'On libère l'objet et la mémoire
Set plage = Nothing
'Pour passer à la ligne suivante
lig = lig + 1
Wend
End With
End Sub
Function ctrlPlage(ByRef pTarget As Range) As Boolean
Dim cel
'Pour toutes les cellules de la plage
For Each cel In pTarget
'Si le contenu de la cellule est différent de vide
If cel.Value <> "" Then
'On retourne Faux
ctrlPlage = False
'On sort de la fonction
Exit Function
End If
Next cel
ctrlPlage = True
End Function
;o)