Amélioration du code

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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.

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
 
Re : Amélioration du code

Re,

la fonction SpecialCells permet énormément de choses...

Elle provient de la commande Edition/Atteindre, "Cellules", d'une feuille de calcul...

En utilisant l'enregistreur de Macro, et en effectuant cette commande, avec toutes les options proposées, tu auras ainsi tous les codes...

Bonne découverte du VBA
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
367
Retour