Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Macro suppréssion plusieurs colonnes discontinues sur plusieurs onglets

  • Initiateur de la discussion Initiateur de la discussion heho13
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

heho13

XLDnaute Occasionnel
Bonjour,

Je n'y connais pas grand chose, j'ai bidouillé un truc en cherchant sur le forum, mais je n'arrive à le faire pour 20 onglet en même temps.

Merci
 

Pièces jointes

Bonjour le fil,

Ta macro actuelle traite toutes les feuilles du classeur actif
VB:
Sub deletecolonne()
Dim O As Object
For Each O In Sheets
    O.Range("G:i,m:o,t:w,aq:at,aw:ay,ba:bb,AA:AN").Delete
Next O
End Sub
IL faudrait qu'on sache le point commun entre les 20 onglets à traiter
(les noms par exemple)
 
Bonjour,

Comme nous ne savons pas quelles feuilles suprimer ni sur quel critères les sélectionner, voici trois façon, parmi d'autre d'opérer sur le classeur joint et à partir de votre macro (qui n'a que 2 feuilles.!!!!).

J'ai utilisé Worksheets (feuilles de travail) plutôt que sheets (autres types de feuilles: graphiques, macro etc .)

VB:
Sub deletecolonne()
    Dim O As Worksheet
    '
    ' suppression des colonnes des feuilles du tableau des noms
    For Each O In Worksheets(Array("Feuil1", "Feuil2"))
        O.Range("G:i,m:o,t:w,aq:at,aw:ay,ba:bb,AA:AN").Delete
    Next
End Sub

Sub deletecolonne2()
    Dim i As Integer
    '
    ' suppression des colonnes des feuilles par index 1 = première feuille
    For i = 1 To 2
        ThisWorkbook.Worksheets(i).Range("G:i,m:o,t:w,aq:at,aw:ay,ba:bb,AA:AN").Delete
    Next i
End Sub

Sub deletecolonne3()
    Dim i As Integer
    '
    ' suppression des colonnes par le nom indéxé des feuilles de 'Feuil1' à 'Feuil2'
    For i = 1 To 2
        ThisWorkbook.Worksheets("Feuil" & i).Range("G:i,m:o,t:w,aq:at,aw:ay,ba:bb,AA:AN").Delete
    Next i
End Sub

Bonne journée

[Edit] bing @Staple1600 et surtout Hello🙂
 
Bonjour Roblochon, mapomme

Même questionnement
20 feuilles oui, mais lesquelles?
Les 20 premières?
Celles dont le nom contiennent à un chiffre
Celles dont le nom contienent la lettre Z
etc...
😉
 
Bonjour à tous,

Oui, c'est les 20 premières feuilles cette fois, ensuite pour les colonnes, c'est juste pour diminuer le fichier et pouvoir supprimer ce qui inutile pour l'impression.
Merci
 
Re,

Toujours pas plus de précision. Si c'est vraiment les 20 premières feuilles, choisissez la solution 2 (sub deletecolonne2())
que je vous ai donnée plus haut en changeant 2 par 20.

Bon après-midi
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
426
Réponses
3
Affichages
231
Réponses
8
Affichages
136
Réponses
4
Affichages
212
  • Question Question
Microsoft 365 macro TCD
Réponses
4
Affichages
272
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…