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 :

Suppression de lignes avec valeurs comprises entre et


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mai 2017
    Messages : 6
    Par défaut Suppression de lignes avec valeurs comprises entre et
    Bonjour,

    je me permets de vous demander de l'aide car je suis à la recherche d'une macro pour supprimer toutes les lignes qui contiennent en colonne B les valeurs comprise entre 300000 et 699999?

    pourriez vous m'aider.

    d'avance merci

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5

  3. #3
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    Bonjour
    essayer avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub EntireRow()
         For i = Range("B" & Rows.Count).End(xlUp).Row To 1 Step -1
            If Cells(i, 2) <= 699999 And Cells(i, 2) >= 300000 Then
            Cells(i, 1).EntireRow.Delete
            End If
           Next i
    End Sub

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mai 2017
    Messages : 6
    Par défaut
    Citation Envoyé par BENNASR Voir le message
    Bonjour
    essayer avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub EntireRow()
         For i = Range("B" & Rows.Count).End(xlUp).Row To 1 Step -1
            If Cells(i, 2) <= 699999 And Cells(i, 2) >= 300000 Then
            Cells(i, 1).EntireRow.Delete
            End If
           Next i
    End Sub
    Bonjour BENNASR,
    Merci pour votre aide malheureusement cela ne fonctionne pas quand je mets cette macro il ne se passe rien

  5. #5
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    capture ecran de ton fichier svp

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mai 2017
    Messages : 6
    Par défaut
    voila sur la capture d écran attaché j'aimerais que toutes les lignes ayant un numéro compris entre 300000 et 699999 soit supprimées
    Images attachées Images attachées  

  7. #7
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    si tu lance le code à partir d'une deuxieme feuille tu dois ajouter with
    ce qui donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub EntireRow()
    With Sheets("feuil1") ' à adapter
         For i = .Range("B" & Rows.Count).End(xlUp).Row To 1 Step -1
            If .Cells(i, 2) <= 699999 And .Cells(i, 2) >= 300000 Then
            .Cells(i, 1).EntireRow.Delete
            End If
           Next i
    End With
    End Sub

  8. #8
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    c'est a cause de la lettre ajouter au nombre comprise entre 300000 et 700000
    essaye avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub EntireRow()
    With Sheets("feuil1") ' à adapter
         For i = .Range("B" & Rows.Count).End(xlUp).Row To 1 Step -1
            If Left(.Cells(i, 2), 6) <= 699999 And Left(.Cells(i, 2), 6) >= 300000 Then
            .Cells(i, 1).EntireRow.Delete
            End If
           Next i
    End With
    End Sub

  9. #9
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    ce ne sont pas des nombres mais du texte ! Forcément ça ne peut pas marcher

    je te conseille d'éclater cette colonne en deux, via le menu "Donnees>>Convertir"

    conversion basée sur le séparateur '"-" et tu te retrouves ainsi avec une colonne portant ton nombre à analyser, et dans l'autre colonne tu as le code complémentaire
    tu pourras donc utiliser les filtres automatiques, cf le lien que je t'ai fourni

Discussions similaires

  1. Suppression de lignes si valeur non incluse entre 2 dates
    Par ikiwi dans le forum Macros et VBA Excel
    Réponses: 31
    Dernier message: 22/06/2017, 10h28
  2. Réponses: 1
    Dernier message: 02/07/2010, 15h25
  3. suppression des lignes avec sed
    Par dngaya dans le forum Linux
    Réponses: 1
    Dernier message: 29/09/2008, 21h23
  4. INSERT multi-lignes avec valeurs connues
    Par herve91 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/11/2006, 23h13
  5. Réponses: 2
    Dernier message: 22/05/2006, 16h38

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