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

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
 

Fichiers joints

Staple1600

XLDnaute Barbatruc
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)
 

Roblochon

XLDnaute Accro
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:)
 

Staple1600

XLDnaute Barbatruc
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...
;)
 

heho13

XLDnaute Occasionnel
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
 

Roblochon

XLDnaute Accro
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
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas