• Initiateur de la discussion Initiateur de la discussion bataggone
  • 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 !

Re : Aide pour un macro

Re,
J'ai pas que quatre (4) feuil j'ai plus de 100 feuil..
il te faudra modifier
Code:
For i = 2 To 5
comme ceci:
Code:
For i = 2 To nombre_de_feuilles
la Feuille "GLOBALE" devant être la première.

si ce n'est pas le cas, remplace le code par celui-ci:
Code:
Sub Macro1()
Sheets("GLOBALE").Select
Application.ScreenUpdating = False
    Range("B6:E" & Range("B65535").End(xlUp).Row + 1).ClearContents

For i = 1 To 150    ' le_nombre_exact_de_feuilles
If Sheets(i).Name <>"GLOBALE" Then
    Sheets(i).Select
    Range("B8:B" & Range("B65535").End(xlUp).Row).Select
    Selection.Copy
    Sheets("GLOBALE").Select
    Range("B" & Range("B65535").End(xlUp).Row + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets(i).Select
    Range("E8:E" & Range("B65535").End(xlUp).Row).Select
    Selection.Copy
    Sheets("GLOBALE").Select
    Range("E" & Range("E65535").End(xlUp).Row + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Next i
End If
[C2].Select
Application.ScreenUpdating = True
End Sub
à+
Philippe
 
Dernière édition:
Re : Aide pour un macro

Re,

une petite inversion dans les dernières lignes et ça marche .........je l'espère
Code:
Sub Macro1()
Sheets("GLOBALE").Select
Application.ScreenUpdating = False
    Range("B6:E" & Range("B65535").End(xlUp).Row + 1).ClearContents

For i = 1 To 150    ' le_nombre_exact_de_feuilles
If Sheets(i).Name <> "GLOBALE" Then
    Sheets(i).Select
    Range("B8:B" & Range("B65535").End(xlUp).Row).Select
    Selection.Copy
    Sheets("GLOBALE").Select
    Range("B" & Range("B65535").End(xlUp).Row + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets(i).Select
    Range("E8:E" & Range("B65535").End(xlUp).Row).Select
    Selection.Copy
    Sheets("GLOBALE").Select
    Range("E" & Range("E65535").End(xlUp).Row + 1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End If
Next i
[C2].Select
Application.ScreenUpdating = True
End Sub
à+
Philippe
 
Re : Aide pour un macro

Re,

cette erreur est provoquée par le fait que le nombre exact de feuilles n'est pas correct dans la première ligne ci-dessous
Code:
For i = 1 To 150    ' le_nombre_exact_de_feuilles
If Sheets(i).Name <> "GLOBALE" Then
et la ligne If Sheets(................ est surlignée en jaune

pour y remédier, il faut remplacer 150 par le nombre de feuilles que contient le classeur

ou plus simplement remplacer
For i = 1 To 150

par
For i = 1 To Sheets.Count
ce qui aura pour effet de ne plus devoir se soucier du nombre de feuilles


à+
Philippe
 
Dernière édition:
- 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
33
Affichages
881
Réponses
22
Affichages
493
Réponses
5
Affichages
508
Réponses
3
Affichages
201
Retour