Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

répéter macro à toutes les feuilles sauf une !

  • Initiateur de la discussion Initiateur de la discussion JANO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JANO

XLDnaute Occasionnel
Bonsoir le Forum,

Pourriez vous me dire comment mettre une boucle à mon code ci dessous, pour qu'il s'execute sur toutes les feuilles sauf celle nommée TEST.

Sub test()
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("G33").Select
Application.CutCopyMode = False
Range("AP4:BA28").Select
Selection.Copy
Range("A4").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A1:B2").Select
Selection.Font.Bold = True
Range("A16:B17").Select
Selection.Font.Bold = True
Range("A1").Select
ActiveCell.FormulaR1C1 = "St"
Range("A16").Select
ActiveCell.FormulaR1C1 = "St"
Range("A13").Select
ActiveCell.FormulaR1C1 = "MOYEN"
Range("A28").Select
ActiveCell.FormulaR1C1 = "MOYEN"
Call Moyen
End Sub

Merci
 
Re : répéter macro à toutes les feuilles sauf une !

Bonsoir,

VB:
Sub test()

 For Each sh In Sheets
 If sh.Name = "TEST" Then
 
Else

 Cells.Select
 Selection.Copy
 Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
 :=False, Transpose:=False
 Range("G33").Select
 Application.CutCopyMode = False
 Range("AP4:BA28").Select
 Selection.Copy
 Range("A4").Select
 Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
 SkipBlanks:=False, Transpose:=False
 Range("A1:B2").Select
 Selection.Font.Bold = True
 Range("A16:B17").Select
 Selection.Font.Bold = True
 Range("A1").Select
 ActiveCell.FormulaR1C1 = "St"
 Range("A16").Select
 ActiveCell.FormulaR1C1 = "St"
 Range("A13").Select
 ActiveCell.FormulaR1C1 = "MOYEN"
 Range("A28").Select
 ActiveCell.FormulaR1C1 = "MOYEN"
 Call Moyen
End If
 Next sh

 End Sub

laurent
 
Dernière édition:
Re : répéter macro à toutes les feuilles sauf une !

Bonjour à tous,

A noter tout de même qu'en l'état le code s'exécutera toujours sur la même feuille, soit sur la feuille active si code dans un module standard, soit sur la feuille dans lequel est exécuté le code, si celui-ci est dans un module de feuille... un exemple de code ci-dessous à utiliser dans un module standard :

Code:
Option Explicit
Sub test()
Dim sh As Worksheet
For Each sh In Sheets
    If sh.Name <> "TEST" Then
        With sh.Cells
            .Copy
            .PasteSpecial Paste:=xlPasteValues
        End With
    End If
Next sh
End Sub

on peut également noter que les "select" sont inutiles et ne font que ralentir le code....

bonne journée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
445
Réponses
10
Affichages
661
Réponses
2
Affichages
352
Réponses
17
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…