OVH Cloud OVH Cloud

Formatter un nombre variable de feuilles

2 réponses
Avatar
Yza
Bonjour,

Je réitère ma demande. Je dois formatter de la même façon toutes les
feuilles de plusieurs classeurs (un classeur à la fois).

Je veux éviter de le faire à répétition (avec For... Next...) et j'ignore
s'il est possible d'adapter la commande
"Sheets(Array("AAA","BBB","CCC",...)).Select à chaque classeur si le nombre
de feuille diffère.

Mon code actuel est: du genre

Dim NbrOfSheets As Integer 'Nombre de feuilles dans le fichier
NbrOfSheets = Worksheets.Count

For SheetNbr = 1 To NbrOfSheets 'Fonctions appliquées sur chacune des
feuilles une à une
Sheets(SheetNbr).Select
With ActiveSheet.PageSetup
.LeftHeader = "&""Arial,Bold Italic""&F"
.LeftMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.65)
End With
Next SheetNbr

Dans lequel je change la première ligne.selon le classeur

Merci!


Yza

2 réponses

Avatar
kribot
Je ne pense pas que ce soit possible... enfin à ma connaissance pa
contre ce code là est plus "custom", il faut toujours éviter les selec
dans le code c'est mal :)


Code
-------------------

Dim f As Worksheet
For Each f In ActiveWorkbook.Worksheets
With f.PageSetup
.LeftHeader = "&""Arial,Bold Italic""&F"
.LeftMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.65)
End With
Next f

-------------------


Bonne journée

cdlt,
kribo

--
kribo
-----------------------------------------------------------------------
kribot's Profile: http://www.msusenet.com/member.php?userid
View this thread: http://www.msusenet.com/t-322816
Avatar
MichDenis
Bonjour Yza,

Je t'ai donné une réponse à ton message précédent. Qu'est-ce qui ne fonctionne pas avec la proposition que je t'ai
faite.

P.S. Il est préférable de demeurer dans le fil de discussion... cela permet à tous de voir les propositions déjà faites
et d'adapter les leurs le cas échéant.


Salutations!


"Yza" a écrit dans le message de news:
Bonjour,

Je réitère ma demande. Je dois formatter de la même façon toutes les
feuilles de plusieurs classeurs (un classeur à la fois).

Je veux éviter de le faire à répétition (avec For... Next...) et j'ignore
s'il est possible d'adapter la commande
"Sheets(Array("AAA","BBB","CCC",...)).Select à chaque classeur si le nombre
de feuille diffère.

Mon code actuel est: du genre

Dim NbrOfSheets As Integer 'Nombre de feuilles dans le fichier
NbrOfSheets = Worksheets.Count

For SheetNbr = 1 To NbrOfSheets 'Fonctions appliquées sur chacune des
feuilles une à une
Sheets(SheetNbr).Select
With ActiveSheet.PageSetup
.LeftHeader = "&""Arial,Bold Italic""&F"
.LeftMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.65)
End With
Next SheetNbr

Dans lequel je change la première ligne.selon le classeur

Merci!


Yza