Demande d'aide macro

Résolu
Bonjour
Je cherche à écrire une macro dans Excel qui me permette d'éliminer dans un tableau des lignes lorsque la première case est vide. Mon niveau est très modeste ...
J'avais préparé un petit exemple que je joins sous forme d'image. Je veux passer du tableau 1 au tableau 2.
Merci d'avance.

5 réponses

  1. Bonjour

    Par "éliminer", tu entends supprimer ou bien masquer ?

    Const cotest As String = "A"
    Const lideb As Long = 4
    
    Public Sub OK()
    Dim li As Long, lifin As Long
    lifin = Range(cotest & Rows.Count).End(xlUp).Row
    Application.ScreenUpdating = False
    For li = lifin To lideb Step -1
      ' pour supprimer les lignes
      If Range(cotest & li).Value = "" Then Rows(li).Delete
      ' pour masquer les lignes
      ' If Range(cotest & li).Value = "" Then Rows(li).Hidden = True
    Next li
    End Sub

    Cdlmnt
    0
    1. Contributeur
      Bonjour,

      Avec ce code tu devrais obtenir ton objectif
      Public Sub supprimer_lignes()
      Dim lig As Long
      Const deb = 3  ' ligne début tableau
          For lig = ActiveSheet.UsedRange.Rows.Count To deb Step -1
              If Cells(lig, 1).Value = "" Then Rows(lig).Delete
          Next lig
      End Sub
      
      0
      1. Bonjour a tous les deux, et merci pour votre réactivité.
        Je sais, je suis nul ! Mais je ne parviens pas à faire fonctionner cette ligne de programme. Je fais un copier-coller dans Visual Basic, et rien ne se passe. Est-ce que je dois faire autre chose, écrire d'autres indications de démarrage par exemple? Et comment procéder?
        Merci encore pour vos éclairages
        Cdlt
        0
        1. 1. Tu te mets dans la feuille à traiter
          2. Alt-F11 pour accéder au module vba de cette feuille
          3. tu colles tout le code
          4. tu reviens dans la feuille
          5. Enregistrer/affecter un raccourci-clavier à la macro
          voir ici
          Enregistrer avec le type .xslm
          7. Lancer la macro avec le raccourci-clavier choisi

          Cdlmnt
          0
          1. Bonjour
            Merci, cela marche très bien.
            Encore merci
            colt
            PB
            0