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
 

Pièces jointes

  • 1test2.xlsm
    16.2 KB · Affichages: 9

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

Statistiques des forums

Discussions
283 707
Messages
1 853 840
Membres
152 280
dernier inscrit
nd01
Haut Bas