Demande d'aide macro

Résolu/Fermé
Messages postés
8
Date d'inscription
mercredi 3 juin 2015
Statut
Membre
Dernière intervention
8 juin 2017
-
Messages postés
8
Date d'inscription
mercredi 3 juin 2015
Statut
Membre
Dernière intervention
8 juin 2017
-
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

Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
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
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 592
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
Messages postés
8
Date d'inscription
mercredi 3 juin 2015
Statut
Membre
Dernière intervention
8 juin 2017

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
Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
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
Messages postés
8
Date d'inscription
mercredi 3 juin 2015
Statut
Membre
Dernière intervention
8 juin 2017

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