Merci! Je vais tester et vous revenir@Phil69970 : En effet, étourderie de ma part Delete est bizarre, le plus indiqué est Clear
@Bebzinda : Si j'ai bien compris ta demande.
VB:Sub Regrouper_Feuilles_Concernées() Dim F As Worksheet, a, i As Integer, Sh As Worksheet Set F = Worksheets("synthèse") Application.ScreenUpdating = False a = Array("Feuil1", "Feuil2", "Feuil3") 'on met le nom des feuilles à copier dans une variable tableau (adapter nom feuilles) Debug.Print LBound(a), UBound(a) F.Range("A1").CurrentRegion.Offset(1).Clear 'on efface For i = LBound(a) To UBound(a) Set Sh = Worksheets(a(i)) With Sh .Range("A1").CurrentRegion.Offset(1).Copy F.Range("A" & Rows.Count).End(xlUp)(2) End With Next i Set Sh = Nothing: Set F = Nothing Application.ScreenUpdating = True MsgBox "Transfert terminé!", vbInformation + vbOKOnly, "TRANSFERT DONNEES" End Sub
Pas très clair! Édite ton code et sois un peu plus précis.Salut! vous allez bien j'espère? grâce aux différentes solution proposés, suis parvenu à regrouper les informations des feuilles (1,2,3,4,5) dans la feuille "synthèse". cependant j'ai un autre souci. j'ai créer une macro qui copie les informations dans les bases (1,2,3,4,5) et les colles par valeur respectivement dans les feuilles citées. une foi la macro exécuté, si je lance le code pour regrouper les informations dans synthèse, seul les informations de la feuil5 sont récupéré. j'ai besoin de votre aide!
Sub regrouper()
Application.ScreenUpdating = False
Set f = Sheets("synthèse")
f.Range("A2:AR2000").Clear
For i = 1 To 5
With Worksheets(i)
.Range("A2", .Cells(.Range("A2000").End(xlUp).Row, 50)).Copy Destination:=f.Range("A2000").End(xlUp)(2)
End With
Next i
Application.ScreenUpdating = True
End Sub
Désolé, ce n'est pas mon code voir post#14VB:Sub regrouper() Application.ScreenUpdating = False Set f = Sheets("synthèse") f.Range("A2:AR2000").Clear For i = 1 To 5 With Worksheets(i) .Range("A2", .Cells(.Range("A2000").End(xlUp).Row, 50)).Copy Destination:=f.Range("A2000").End(xlUp)(2) End With Next i Application.ScreenUpdating = True End Sub
le code fonctionne si je renseigne les feuille (1,2,3,4,5) manuellement. mais une foi que je lance la macro pour renseigner les feuilles, le code fonctionne à moitié car seul les informations de la feuille5 se retrouve dans la feuille synthèse.
je viens de lance votre code, apparemment il n'y pas de problème car le msgbox s'affiche. mais je n'est rien dans la feuille synthèse. les feuilles utilisées sont: Feuil1,Feuil2,Feuil3,Feuil4,Feuil5 et synthèse avec le même emplacement dans le classeur.Désolé, ce n'est pas mon code voir post#14
Tu utilises l'index des feuilles. Or, je pense que la feuille "synthèse" à l'index 1; d'où le mauvais transfert.
A+
Joins ton fichier en rendant anonyme les données confidentielles.je viens de lance votre code, apparemment il n'y pas de problème car le msgbox s'affiche. mais je n'est rien dans la feuille synthèse. les feuilles utilisées sont: Feuil1,Feuil2,Feuil3,Feuil4,Feuil5 et synthèse avec le même emplacement dans le classeur.
Non elle n'est pas protégé. on me dit que le fichier est trop volumineux. je ne sait pas comment l'envoyéJoins ton fichier en rendant anonyme les données confidentielles.
A+
edit: Est-ce que la feuille synthèse ne serait pas protégée par hasard?
As-tu testé le code du fichier joint dans mon précédent post?Non elle n'est pas protégé. on me dit que le fichier est trop volumineux. je ne sait pas comment l'envoyé
a = Array("Feuil1", "Feuil2", "Feuil3", "but", "joli")
Non elle n'est pas protégé. on me dit que le fichier est trop volumineux. je ne sait pas comment l'envoyé
https://www.cjoint.com/c/KKkqPTro3lvAs-tu testé le code du fichier joint dans mon précédent post?
Pour ton fichier s'il dépasse 1Mo il ne passe pas sur le forum. essaie de le zipper ou tu le déposes sur un site de transfert de gros fichier (https://www.cjoint.com/) et tu édites ici le lien.
Normalement, le code fera bien le boulot en veillant à bien saisir le nom des feuilles à transférer sur la ligne ci-dessousVB:a = Array("Feuil1", "Feuil2", "Feuil3", "but", "joli")
A+
le code fonctionne à merveille! le souci est que dans mon classeur il y a des des feuilles nommées base (1,2,3,4,5). est ce possible de récupérer les informations à partir de ces bases et de les regrouper comme vous l'aviez fait en exemple? j'ai pensé cela difficile j'ai donc créer une macro qui les copies dans d'autres feuilles par valeur et de ces feuilles je compte les regrouper dans une autre.Joins ton fichier en rendant anonyme les données confidentielles.
A+
edit: Est-ce que la feuille synthèse ne serait pas protégée par hasard?
ci-joint fichier, le code est dans le module2
J'avoue que je n'ai pas bien compris.le code fonctionne à merveille! le souci est que dans mon classeur il y a des des feuilles nommées base (1,2,3,4,5). est ce possible de récupérer les informations à partir de ces bases et de les regrouper comme vous l'aviez fait en exemple? j'ai pensé cela difficile j'ai donc créer une macro qui les copies dans d'autres feuilles par valeur et de ces feuilles je compte les regrouper dans une autre.
ok merci bien! je vais en tenir compte et vous revenir demain. bonsoir à vous!J'avoue que je n'ai pas bien compris.
Cependant, j'ai ouvert ton fichier et il s'avère que tu as utilisé des tableaux avec beaucoup de lignes vides qui sont sources de problèmes.
Il faut savoir que la plage de ces tableaux s'ajuste automatiquement à l'ajout de lignes ou des colonnes.
Il faut donc supprimer toutes les lignes vides.
Je m'arrête pour aujourd'hui, je suis fatigué.
Bonne soirée.