Macro mise en page
Bonjour,
j'ai cette macro là ! et j'aimerai qu'elle s'applique sur toutes les feuille active ! ( elles peuvent etre differente (les feuilles) car j'obtient ce fichier grace a des importations !!
ici on peut voir qu elle s'applique sur les feuille "Feuil1" " feuil2" "PRODUCTION" ... mais moi je voudrai qu elle s'applique sur toutes les feuille active ( car aussi bien a la prochaine ouverture du fichier la feuille " PRODUCTION" n'existera plus et alors il y aura un message d'erreur !!
Merci
Cordialement
Sub Macro2()
Sheets(Array("Feuil1", "Feuil2", "PRODUCTION", "RAF", "CONTRÔLE", "FOODS")).Select
Range("V5:AR5,V8:AR8,V11:AR11,V14:AR14,V17:AR17,V20:AR20,V23:AR23").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("V:V").EntireColumn.AutoFit
Columns("X:X").EntireColumn.AutoFit
Columns("Z:Z").EntireColumn.AutoFit
Columns("AB:AB").EntireColumn.AutoFit
Columns("AD:AD").EntireColumn.AutoFit
Columns("AF:AF").EntireColumn.AutoFit
Columns("AH:AH").EntireColumn.AutoFit
Columns("AJ:AJ").EntireColumn.AutoFit
Columns("AL:AL").EntireColumn.AutoFit
Columns("AN:AN").EntireColumn.AutoFit
Columns("AP:AP").EntireColumn.AutoFit
Columns("AR:AR").EntireColumn.AutoFit
Rows("8:8").EntireRow.AutoFit
Rows("11:11").EntireRow.AutoFit
Rows("14:14").EntireRow.AutoFit
Rows("17:17").EntireRow.AutoFit
Rows("20:20").EntireRow.AutoFit
Rows("23:23").EntireRow.AutoFit
End Subj'ai egalement essayer avec : " activeSheet.Select" mais cela n'agit seulement sur la premiere feuille active et non sur toutes les feuilles actives
Bonjour
Essaie ce code à placer dans "ThisWorkBook" et non pas dans un module
Private Sub Workbook_Open()
Dim C
For Each C In Sheets
Range("V5:AR5,V8:AR8,V11:AR11,V14:AR14,V17:AR17,V20:AR20,V23:AR23").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("V:V").EntireColumn.AutoFit
Columns("X:X").EntireColumn.AutoFit
Columns("Z:Z").EntireColumn.AutoFit
Columns("AB:AB").EntireColumn.AutoFit
Columns("AD:AD").EntireColumn.AutoFit
Columns("AF:AF").EntireColumn.AutoFit
Columns("AH:AH").EntireColumn.AutoFit
Columns("AJ:AJ").EntireColumn.AutoFit
Columns("AL:AL").EntireColumn.AutoFit
Columns("AN:AN").EntireColumn.AutoFit
Columns("AP:AP").EntireColumn.AutoFit
Columns("AR:AR").EntireColumn.AutoFit
Rows("8:8").EntireRow.AutoFit
Rows("11:11").EntireRow.AutoFit
Rows("14:14").EntireRow.AutoFit
Rows("17:17").EntireRow.AutoFit
Rows("20:20").EntireRow.AutoFit
Rows("23:23").EntireRow.AutoFit
Next C
End Sub
Merci pour ton aide mais le probleme c'est que je veux cette mise en page pas dès l ouverture mais bien apres avoir cliquer sur le bouton
Lorsque j'ouvre mon fichier j'obtient des donnée grace a une importation , ensuite je clique et cela créer les feuilles avec la mise en page que je souhaite , donc la mise en page tant que j'ai pas cliquer s'effectue sur rien du tout ! il faut que ça agisse lorsque je clique
C'est pour cela que je l'avais mis dans un module et non dans le workbook .
Une solution ??
Merci beaucoup en tout cas