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 ligne pour tout code se trouvant dans une liste en VBA [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 25
    Par défaut Supprimer ligne pour tout code se trouvant dans une liste en VBA
    Bonjour à tous,
    Difficile de s'exprimer clairement sur le titre, en fait je désire supprimer les lignes sur une feuille dont la colonne A correspond à un code si ce code se trouve dans une liste sur un autre fichier. Je vous précise que le code est composé de lettres et de chiffres.
    Si vous avez une idée pour réaliser ceci en VBA, ça serait super.

    Merci à tous

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    633
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 633
    Par défaut
    Bonjour

    en commentaire dans le code les lignes que tu doit modifier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub supprimeLigne()
    Dim wbk As Workbook
    Dim wshListe As Worksheet
    Dim plage As Range
    Dim ligne As Long
     
    Set wbk = Workbooks("Classeur5") 'classeur liste des codes
    Set wshListe = wbk.Worksheets("Feuil1") 'Feuille des codes
    Set plage = wshListe.Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row) 'plage des codes
    ligne = 2' 
     
    With Workbooks("Classeur4").Worksheets("Feuil1") 'classeur ou on doit supprimer les lignes
      Do While .Cells(ligne, 1) <> ""
        If Not plage.Find(.Cells(ligne, 1), LookIn:=xlValues, lookat:=xlWhole) Is Nothing Then
          .Cells(ligne, 1).EntireRow.Delete Shift:=xlShiftUp
        Else
          ligne = ligne + 1
        End If
      Loop
    End With
     
    End Sub

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 25
    Par défaut
    Merci pour ce code, il marche à merveille, je l'ai une peit peu adapté car je voulais qu'il se réalise sur le classeur et la feuille qui est ouverte à l'écran.
    Je donne le code modifié pour ceux qui sont intéressé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub supprime ligne()
    Dim wbk As Workbook
    Dim wbk2 As Workbook
    Dim wshliste As Worksheet
    Dim plage As Range
    Dim ligne As Long
     
    Set wbk2 = ActiveWorkbook 'le classeur ouvert
    Set wbk = Workbooks("Automatisation BAG.xls")
    Set wshliste = wbk.Worksheets("Grand Compte")
    Set plage = wshliste.Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
    ligne = 2
     
    With wbk2.ActiveSheet 'la feuille ouverte
    Do While .Cells(ligne, 1) <> ""
        If Not plage.Find(.Cells(ligne, 1), LookIn:=xlValues, lookat:=xlWhole) Is Nothing Then
          .Cells(ligne, 1).EntireRow.Delete Shift:=xlShiftUp
        Else
          ligne = ligne + 1
        End If
      Loop
    End With
    End Sub

    Encore merci à toi et bonne continuation


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

Discussions similaires

  1. supprimer les fichiers qui ne sont pas dans une liste
    Par jeorcal dans le forum Langage
    Réponses: 7
    Dernier message: 15/01/2011, 10h03
  2. Fonction pour rechercher un nom précis dans une liste
    Par regimari dans le forum wxPython
    Réponses: 4
    Dernier message: 04/12/2009, 19h59
  3. Ajouter ligne sup pour chaque groupe de doublon dans une liste
    Par Yashin dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/07/2009, 12h42
  4. Réponses: 1
    Dernier message: 08/06/2007, 09h12

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