VBA Excel: Ajout auto d'une colonne dans différents onglets

Résolu/Fermé
Anaïs - Modifié par Anaïs le 7/12/2013 à 19:04
 Anaïs - 7 déc. 2013 à 21:01
Bonjour,

Je dispose d'un classeur Excel comportant plusieurs onglets.
Je cherche tout simplement un code vba pouvant me permettre d'ajouter automatiquement une colonne (tjr au même endroit) à partir du troisième onglet et jusqu'au dernier et que je pourrai appliquer à d'autres classeurs dont les onglets pourront porter des noms différents mais ce sera tjr du troisième au dernier.

Merci pour votre aide!

3 réponses

Mike-31
Messages postés
18048
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
19 septembre 2022
4 990
7 déc. 2013 à 20:27
Re,

sépare la sélection des feuille avant l'insertion de la colonne

Sub Insertion()
'
Sheets(3).Select
For i = 3 To Sheets.Count
Sheets(i).Select (False)
Next
Columns("F:F").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets(1).Select
End Sub
1
Ca marche, super!

Merci!
0
Mike-31
Messages postés
18048
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
19 septembre 2022
4 990
7 déc. 2013 à 20:48
Re,

tu as remarqué pendant l'exécution du code un déplacement sur les feuilles, tu peux bloquer ce déplacement en ajoutant une ligne en début et fin de code

Sub Insertion()
Application.ScreenUpdating = False
Sheets(3).Select
For i = 3 To Sheets.Count
Sheets(i).Select (False)
Next
Columns("F:F").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets(1).Select
Application.ScreenUpdating = True
End Sub
1
Encore mieux!

Merci encore!
0
Mike-31
Messages postés
18048
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
19 septembre 2022
4 990
7 déc. 2013 à 20:00
Bonsoir

un code pour sélectionner de la feuille 3 à la dernière et insérer une colonne en colonne F sur les feuille sélectionnée

Sub Insertion()
'
Sheets(3).Select
For i = 3 To Sheets.Count
Sheets(i).Select (False)
Next
Columns("F:F").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets(1).Select
End Sub

ce code peut être perfectionné en limitant le déplacement pendant l'exécussion
0
Bonsoir,

Je te remercie pour le code.
Mais lorsque je l'applique, il insère bien une colonne en F sur le 3ème onglet mais pas sur les suivants.

Merci
0