XL 2019 VBA : supprimer colonnes / lignes si conditions + MFC

ruliann

XLDnaute Occasionnel
hello

Je récupère un tableau brut d'un fournisseur, avec de nombreuses lignes (environ 500) et colonnes (parfois jusqu'à 200) et j'aimerais mettre en page ce tableau.

Sur le tableau ci-joint, je souhaiterais :
  • supprimer les colonnes que j'ai surlignées en jaune (la condition : que le contenu de la cellule de la 2ème ligne, depuis la colonne I jusqu'à la dernière colonne renseignée, soit égal à 0)
  • supprimer les lignes que j'ai surlignées en rouge (la condition : que toutes les cellules de la ligne, depuis la colonne I jusqu'à la dernière colonne renseignée, soient égales à 0)
Et une fois ce tri effectué, j'aimerais appliquer un code couleur, comme l'exemple réalisé manuellement sur la ligne 5. J'avais pensé utilisé une MFC, mais vu que les valeurs des "prix" situées sur les colonnes D à H varient pour chaque ligne, cela veut veut dire que je dois paramétrer des MFC pour chaque ligne??? (ce qui prendrait beaucoup de temps)
  • pour le code couleur, n'y a-t-il pas une autre manière de faire qu'en paramétrant des règles de MFC pour chaque ligne?

merci pour votre aide, pour le moment je ne suis pas allé bien loin. Ce code destiné à supprimer les colonnes fonctionne, mais je dois relancer la macro à chaque fois, pour chaque colonne...

VB:
Sub Efface_colonne()

     For Each C In Range("I2:AM2")
        If C = "0" Then C.EntireColumn.Delete
    Next

End Sub
 

Pièces jointes

  • fichier-test.xlsx
    16.3 KB · Affichages: 19
Dernière édition:

ruliann

XLDnaute Occasionnel
cool ca fonctionne très bien encore merci

sans abuser de ton temps, si à l'occasion tu peux m'indiquer comme faire la macro du 2ème fichier, ça me fera un exercice pour débuter VBA en essayant de comprendre ton code (c'est juste de la curiosité de ma part)
bon ap
 

Discussions similaires

Réponses
22
Affichages
791

Membres actuellement en ligne

Statistiques des forums

Discussions
312 329
Messages
2 087 335
Membres
103 520
dernier inscrit
Azise