Macro pour supprimer des lignes vides

Le
Erico
Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #5076381
Bonjour,

C'est une question!

...pas besoin de macro.
Ne t'en pose pas, prends tout et trie!


Cordialement.

--
lSteph

Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal


Tatanka
Le #5076341
Salut compatriote,

Essaie ceci :

Sub Enlever_Lignes_Vides()
Set p = Application.InputBox(Prompt:="Sélectionnez une plage", _
Title:=" Supprimer lignes vides", Type:=8)
With p
For i = .Rows.Count To 1 Step -1
If Application.Count(.Rows(i)) = 0 Then .Rows(i).Delete
Next i
End With
End Sub

Serge de Québec ( Limoilou les gros loups )



"Erico"
Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal


Tatanka
Le #5076291
Préférable de remplacer :
If Application.Count(.Rows(i)) = 0 Then .Rows(i).Delete
par :
If Application.CountA(.Rows(i)) = 0 Then .Rows(i).Delete

Serge


"Tatanka"
Salut compatriote,

Essaie ceci :

Sub Enlever_Lignes_Vides()
Set p = Application.InputBox(Prompt:="Sélectionnez une plage", _
Title:=" Supprimer lignes vides", Type:=8)
With p
For i = .Rows.Count To 1 Step -1
If Application.Count(.Rows(i)) = 0 Then .Rows(i).Delete
Next i
End With
End Sub

Serge de Québec ( Limoilou les gros loups )



"Erico"
Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal






lSteph
Le #5076021
Bonjour Erico,
Mon premier message , ainsi que celui de Serge sans doute, qui lance
une proposition transversale pour laquelle j'attendait d'éventuelles
précisions,
donc attendent (amha) un retour de ta part...pour savoir ce que tu
veux effectivement.

Des lignes ne disparaissent pas vraiment elle reviennent ailleurs,
qd on les supprime la feuille compte toujours 65536 lignes.
C'est pourquoi le principe d'une sélection exigerait de savoir si l'on
veut supprimer la ligne entière ou seulement dans la sélection, car en
l'état cela ne va pas lorsqu'on est dans un tableau.
Exemple: http://cjoint.com/?lEkYmHtcva

Si dans la plage certaines cellules sont vides la suppression fera
remonter celles d'en dessous et à partir de la plage sélectionnée tout
l'ensemble du tableau se trouvera décalé.

C'est pour quoi je re propose,
soit simplement sélectionner une plage entière , le tableau entier
pour trier,
car le tri permet par suite d'évacuer les lignes entièrement vides en
fin de tableau.

soit une macro qui remonte .entirerow, selon l'exemple de Tatanka :

Sub Enlever_Lignes_Vides_entier()
Dim p As Range, i As Long
Set p = Application.InputBox(Prompt:="Sélectionnez une plage", _
Title:=" Supprimer lignes vides", Type:=8)
With p
For i = .Rows.Count To 1 Step -1
If Application.CountA(.Rows(i)) = 0 Then _
.Rows(i).EntireRow.Delete 'ICI
Next i
End With
End Sub



Cordialement.

--
lSteph


On 29 nov, 20:31, Erico
Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal


Erico
Le #5390291
j'ai fais le tri et ça fonctionné, par chance que mes autres lignes ont
suivi ma fréquence voulu.

J'aimerais mieux avoir la macro et je vais l'essayer a mon bureau lundi
prochain.

merci la gang.

Erico



"lSteph" news:
Bonjour Erico,
Mon premier message , ainsi que celui de Serge sans doute, qui lance
une proposition transversale pour laquelle j'attendait d'éventuelles
précisions,
donc attendent (amha) un retour de ta part...pour savoir ce que tu
veux effectivement.

Des lignes ne disparaissent pas vraiment elle reviennent ailleurs,
qd on les supprime la feuille compte toujours 65536 lignes.
C'est pourquoi le principe d'une sélection exigerait de savoir si l'on
veut supprimer la ligne entière ou seulement dans la sélection, car en
l'état cela ne va pas lorsqu'on est dans un tableau.
Exemple: http://cjoint.com/?lEkYmHtcva

Si dans la plage certaines cellules sont vides la suppression fera
remonter celles d'en dessous et à partir de la plage sélectionnée tout
l'ensemble du tableau se trouvera décalé.

C'est pour quoi je re propose,
soit simplement sélectionner une plage entière , le tableau entier
pour trier,
car le tri permet par suite d'évacuer les lignes entièrement vides en
fin de tableau.

soit une macro qui remonte .entirerow, selon l'exemple de Tatanka :

Sub Enlever_Lignes_Vides_entier()
Dim p As Range, i As Long
Set p = Application.InputBox(Prompt:="Sélectionnez une plage", _
Title:=" Supprimer lignes vides", Type:=8)
With p
For i = .Rows.Count To 1 Step -1
If Application.CountA(.Rows(i)) = 0 Then _
.Rows(i).EntireRow.Delete 'ICI
Next i
End With
End Sub



Cordialement.

--
lSteph


On 29 nov, 20:31, Erico
Bonjour,

J'aimerais avoir une macro qui me poserait comme question "Sélectionner la
plage" pour supprimer des lignes vides seulement.

Merci

Érico de Montréal


Publicité
Poster une réponse
Anonyme