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 colonnes avec boucle for .. next [XL-MAC 2011]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2017
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2017
    Messages : 79
    Points : 54
    Points
    54
    Par défaut Suppression de colonnes avec boucle for .. next
    Bonjour

    Sur la première ligne d'une feuille, j'ai deux types de valeurs possibles: 1 ou 2

    Je souhaiterais que toutes les colonnes ayant la valeur 1 soient supprimées.
    La macro doit pouvoir fonctionner sur plusieurs feuilles de calcul, sur lesquelles les colonnes "1" ne sont pas toutes au même endroit.
    D'où le besoin de pouvoir critériser la suppression de la colonne sur la valeur 1 de la première ligne.


    La macro ci-dessous ne me permet pas d'arriver au résultat souhaité:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub SUP_COL()
     
    		For i = 1 To 300
    			If not Cells(1, i) = "1" Then
    				columns(1,i).entirecolumn.delete
    				end if
    			next
     
    		End Sub
    Par exemple sur le fichier ci-joint, j'aimerais qu'il ne reste que les colonnes "2", et si-possible dans leur ordre initial, c'est à dire avec les valeurs de la ligne 2 dans l'ordre alphabétique.

    Voyez-vous une solution svp?

    Merci par avance.

    SUP_COL.xlsx

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2013
    Messages : 383
    Points : 659
    Points
    659
    Par défaut
    Bonjour,

    Avec cette macro, un décalage se crée lorsque tu as deux 1 successifs.
    En effet, lorsque tu vas rencontrer le premier 1 (en colonne C par exemple), ta macro va supprimer la colonne C, et la colonne D va se retrouver à la place de la colonne C.
    Puis ta macro continue ta boucle en passant à la colonne d'après, elle va donc ignorer la colonne D qui s'est retrouvée en colonne C !

    Je ne sais pas si mon explication est claire, mais tu peux résoudre ce problème en partant des colonnes de droite et en remontant à l'envers, à l'aide de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = 300 To 1 step -1
    Demain, je vais commencer par m'acheter des lunettes. Et après, je verrai bien.

  3. #3
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2017
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2017
    Messages : 79
    Points : 54
    Points
    54
    Par défaut
    Bonjour
    Oui c'est exactement ce step -1 que je cherchais.
    Merci beaucoup.

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

Discussions similaires

  1. Boucle For Next avec 2 variables
    Par neninio31 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/07/2019, 19h46
  2. [XL-2003] Pb avec une boucle For - Next
    Par cynoq dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 12/12/2011, 11h29
  3. Prob boucle for next avec recherche chaine
    Par papajn dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 11/08/2011, 18h44
  4. [AC-2007] ouvrir plusieurs états avec boucle FOR...NEXT
    Par sylv20 dans le forum IHM
    Réponses: 5
    Dernier message: 30/06/2011, 10h58
  5. [VB.net] Boucle for next avec un tableau
    Par grand_prophete dans le forum Windows Forms
    Réponses: 4
    Dernier message: 31/05/2006, 11h08

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