répéter une procédure dans tous les onglets

philmaure

XLDnaute Impliqué
bonjour,

J'ai une procédure que je dois réaliser dans plusieurs onglets et dans différents fichiers.

Je ne connais pas forcément par avance le nom des onglets.

Comment puis je lancer cette procédure dans tous les onglets sans en connaitre leur nom.

J'ai mis un petit exemple très simplifié en pj.

Le but est que la macro soit lancée dans tous les onglets

Merci pour votre aide

Cdlt
Philmaure
 

Pièces jointes

  • Classeur2.xlsm
    16.2 KB · Affichages: 21

Jacky67

XLDnaute Barbatruc
Bonjour,
Essaye comme ceci
Code:
Sub Macro1()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Worksheets
  For i = 1 To 5
    Sh.Cells(i, 1) = i
  Next
  For i = 2 To 7
    Sh.Cells(1, i) = Chr(i + 63)
  Next
  With Sh.Range("A1:G5")
    .Borders.Weight = xlThin
  End With
Next
End Sub
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, le forum

Une autre possibilité (en utilisant une fonctionnalité rarement utilisée):
FillAcrossSheets
NB: Il faut qu'au départ que la plage recopiée soit déjà renseignée et formatée;
(ici on recopie la plage A1:G5 de la feuille 1 sur toutes les feuilles du classeur)
VB:
Sub b()
Dim TWs, i
With ThisWorkbook
ReDim TWs(1 To .Worksheets.Count)
    For i = 1 To .Worksheets.Count
        TWs(i) = .Sheets(i).Name
    Next
Sheets(TWs).FillAcrossSheets .Worksheets(1).Range("A1:G5")
End With
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 338
Messages
2 087 396
Membres
103 534
dernier inscrit
Kalamymustapha