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 des lignes en fonction de la valeur de la cellule d'une colonne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur Statisticien Economiste
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur Statisticien Economiste
    Secteur : Finance

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Par défaut supprimer des lignes en fonction de la valeur de la cellule d'une colonne
    Bonjour à tous,

    j'ai un problème un peu similaire à celui de cette discussion.

    Par contre j'ai un tableau avec au moins 60 mille ligne et je veux supprimer les lignes qui contiennent des valeurs qui ne m'intéressent pas.

    C'est la colonne A, qui m'intéresse. J'ai beau essayer mais je n'y arrive pas et le code que j'ai testé ne passe pas ou il me supprime toutes les lignes.

    Merci pour l'aide que vous voudrez bien m'apporter

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour EKRACEDRIC
    Je viens d' "examiner" le code que tu as tenté et "montré" dans ton message.
    Il contient des erreurs et maladresses à corriger en ses lignes x et y !

  3. #3
    Membre à l'essai
    Homme Profil pro
    Ingénieur Statisticien Economiste
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur Statisticien Economiste
    Secteur : Finance

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Par défaut
    Bonjour je me suis incrusté dans la discussion pour partager mon problème.

    voilà le code que j'ai utilisé :

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    Sub ...()
     
    'on sélectionne la première feuille du classeur qu'on va dupliquer
     
    Sheets(1).Select
     
    Sheets(1).Copy after:=Sheets(1)
     
    'ensuite on retire les sous totaux de la feuille dupliquée
     
    Selection.RemoveSubtotal
     
    'maintenant on va supprimer la colonne B qui est le libellé des agences, et qui est toujours vide
     
    Columns("B:B").Select
     
    Selection.Delete Shift:=xlToLeft
     
    'on déclare nos variables
     
     Dim taille As Long  'la taille de la feuille
     
     Dim agence(15) As String ' la liste des 14 agences retenues à définir soi-même
     
    ' Je choisis la liste de 14 agences de mon portefeuille = (75,80,90,91,96,102,103,104,108,111,114,118,125,138)
     
    'définition des agences concernées
     
     agence(0) = 75
     agence(1) = 80
     agence(2) = 90
     agence(3) = 90
     agence(4) = 96
     agence(5) = 102
     agence(6) = 103
     agence(7) = 104
     agence(8) = 108
     agence(9) = 111
     agence(10) = 114
     agence(11) = 118
     agence(12) = 125
     agence(13) = 138
     
     'Ici on va determiner la taille de la feuille pour savoir où la boucle va s'arrêter'
     
     taille = ThisWorkbook.Sheets(2).Range("A1").End(xlDown).Row + 1
     
     'cette variable taille prend le numéro de la  premiere celule vide , donc il faut s'assurer que dans la
     'colonne qui doit être utilisée pour prendre la taille ne contient pas de cellule vide au milieu de données
     ' ici on prend la colonne A
     ' Maintenant pour la boucle , on commence par la deuxieme ligne comme le tableau a des en-têtes
     'MsgBox taille
     'Exit Sub
     
     For i = taille To 2 Step -1
     If (Inarray(ThisWorkbook.Sheets(2).Cells(i, 1), agence) = False) Then ' je vérifie si l'agence i est dans la ligne de mes agences , sinon je la supprime
      ThisWorkbook.Sheets(2).Cells(i, 4).EntireRow.Delete
     End If
     Next i
     
    End Sub
    l'objectif est de supprimer toutes les lignes de la colonne A de ma feuille différente d'une liste de valeurs....

Discussions similaires

  1. supprimer des lignes en fonction d'une valeur
    Par mr_manch dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/02/2016, 20h26
  2. Réponses: 3
    Dernier message: 15/02/2016, 15h59
  3. [XL-2010] Supprimer des lignes en fonction de la valeur de la cellule de deux colonnes
    Par jérémyp8 dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 18/07/2013, 09h25
  4. [XL-2010] supprimer des lignes en fonction de la valeur de la cellule d'une colonne
    Par psylo24 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/11/2012, 13h09
  5. [XL-2003] supprimer des lignes qui ont les même valeurs
    Par Neptune64 dans le forum Excel
    Réponses: 1
    Dernier message: 09/08/2009, 00h30

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