Etienne2323
XLDnaute Impliqué
Bonjour à tous,
je me demande simplement si l'un d'entre vous aurait un code plus concis, plus efficace et plus élégant à me proposer pour remplacer le code suivant.
Le but de ce code est de supprimer les espaces entre les lignes. Dans cet exemple, je mets des chiffres espacés au hasard dans la première colonne. La défaillance majeure de mon code est au niveau du premier chiffre. Je dois faire commencer "Plage" au deuxième terme sinon j'ai une erreur puisque si la première cellule de la première colonne est vide, j'ai une erreur. Bref, ce n'est pas le bout de code le plus efficace de l'histoire.
Quelqu'un a une idée ?
Cordialement,
Étienne
je me demande simplement si l'un d'entre vous aurait un code plus concis, plus efficace et plus élégant à me proposer pour remplacer le code suivant.
Code:
Sub test()
Dim Cell As Range
Dim Plage As Object
Dim DerniereLigne As Integer
Set Plage = Range(Cells(2, 1), Cells(DerniereLigne, 1))
DerniereLigne = Cells(65536, 1).End(xlUp).Row
For Each Cell In Plage
If Cell.Value <> "" Then
If Cell.Offset(-1, 0).Value <> "" Then
GoTo Poursuivre
Else
Cell.Select
Cell.Cut
Cell.End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
End If
Else
GoTo Poursuivre
End If
Poursuivre:
Next Cell
End Sub
Le but de ce code est de supprimer les espaces entre les lignes. Dans cet exemple, je mets des chiffres espacés au hasard dans la première colonne. La défaillance majeure de mon code est au niveau du premier chiffre. Je dois faire commencer "Plage" au deuxième terme sinon j'ai une erreur puisque si la première cellule de la première colonne est vide, j'ai une erreur. Bref, ce n'est pas le bout de code le plus efficace de l'histoire.
Quelqu'un a une idée ?
Cordialement,
Étienne