IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Supprimer la derniere ligne sur plusieurs feuilles


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 39
    Points : 27
    Points
    27
    Par défaut Supprimer la derniere ligne sur plusieurs feuilles
    Bonjour,

    Je débute en progammation VBA et j'essai de programmer une interface qui me permettrais de saisir des informations dans 5 pages excel différentes, ligne par ligne.

    Pour saisir pas de probleme, mais je voudrais créer un bouton me permettant d'effacer la derniere ligne de chacune de mes pages.

    J'ai déjà programmé ceci mais je ne vois pas comment faire la suite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub CommandButton6_Click()
    Dim DernierLigne As Long
     
       Range("A1").Select
         DernierLigne = Selection.End(xlDown).Row
     
       Call Range("A" & DernierLigne).EntireRow.Delete(xlUp)
     
    End Sub
    Merci d'avance

  2. #2
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Salut Goby45 et Bienvenue,

    Tu n'es pas loin d'une solution, toutefois, évite les select qui ralentissent le code et qui sont la plupart du temps inutiles.

    Ensuite, pour trouver la dernière ligne il vaut mieux commencer par le bas, au cas ou il y aurait une ligne vide dans ton tableau, même si ça ne devrait pas arriver chez toi.

    Il te manque aussi la boucle qui va balayer toutes tes feuilles.

    Et pour finir, une précision à apporter, tu veux supprimer la ligne ou l'effacer?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub SuppDerLigne()
     
    Dim Ws As Worksheet
    Dim derLig As Long
     
    For Each Ws In ThisWorkbook.Worksheets 'Boucle sur toutes les feuilles
        derLig = Ws.Cells(Columns(1).Cells.Count, 1).End(xlUp).Row 'Détermine la dernière cellule remplie de la colonne A
        Ws.Rows(derLig).Clear 'Efface les données de la dernière ligne, pour supprimer, remplace .clean par .delete
     
        'On peut aussi le faire en une ligne: Ws.Rows(Ws.Cells(Columns(1).Cells.Count, 1).End(xlUp).Row).Clear
    Next Ws
    End Sub
    A+

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut
    Dans ta procédure Command_Click

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim tabl() As Variant, elt as Variant
    tabl = Array("Feuil1", "Feuil2")
    For Each elt In tabl
        Worksheets(elt).Cells(1).CurrentRegion.Rows( _
            Worksheets(elt).Cells(1).CurrentRegion.Rows.Count).Delete (xlUp)
    Next elt

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 39
    Points : 27
    Points
    27
    Par défaut
    Je voulais effacer !
    Merci beaucoup cela résout mon problème

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Recherche de lignes sur plusieurs feuilles
    Par Warthill dans le forum Conception
    Réponses: 8
    Dernier message: 05/12/2013, 13h58
  2. [XL-2003] Recherche de lignes sur plusieurs feuilles selon 1 ou 2 critères (au choix)
    Par khroutchev dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/07/2013, 15h39
  3. Supprimer une ligne sur deux feuilles du même classeur
    Par apdf1 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 12/03/2011, 12h28
  4. [XL-2003] insertion ligne automatique sur plusieurs feuille
    Par rdams dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/04/2010, 15h42
  5. Supprimer les dernieres lignes et concatener plusieurs fichier
    Par filsdugrand dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 11/04/2006, 21h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo