Copier 100 onglets sur un seul ?

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

K

kartouf

Guest
Bonjour, à tous
J'ai un fichier excel qui comporte plus d'une centaine d'onglets, toujours avec la même trame. Comment faire pour tout amener sur un seul onglet ( mettre toutes les données les une sous les autres), malheureusement je ne sais pas programé en VBA ni même l'utilisé.

Merci pour votre aide, ou vos orientations
 
Re : Copier 100 onglets sur un seul ?

bonjour kartouf ,JCGL🙂🙂🙂🙂🙂🙂
je pense que tu as pas bien cherche sur le forum c'est vraiment "beaba"
je profite pour saluer mon voisin JCGL🙂🙂🙂🙂🙂🙂
qui as du sortir les skis aujourd'hui😀😀😀😀
gros bisous JCGL🙂🙂🙂
a + leti
 
Dernière édition:
Re : Copier 100 onglets sur un seul ?

Bonjour à tous,

Peux-tu essayer en associant ce code à un bouton :

Option Explicit

Sub Regroupement()
Dim X%

For X = 1 To Sheets.Count
If Sheets(X).Name <> "Global" Then
Sheets(X).Range("A3:F" & Range("A65536").End(xlUp).Row + 1).Copy Sheets("Global").Range("A" & (Range("A65536").End(xlUp).Row) + 1)
End If
Next X
End Sub

A + à tous

Edition : Salut Titia... Pas de ski aujourd'hui... J'avais école.. Mais demain si la tempête annoncée ne gène pas trop. Plein de bisous.
 
Dernière édition:
Re : Copier 100 onglets sur un seul ?

Bonsoir à tous, JCGL 😉 , leti 😉


Une autre façon de faire
(qui doit effectivement trainer dans des fils de discussion ou j'ai jadis pondu le même genre de code...)
Code:
Sub a()
Dim s As Worksheet, p As Range, dl&, j&
j = 1
With Sheets("global")
    For Each s In Worksheets
        If Not s.Name Like "global" Then
        Set p = s.Range("A3:F" & s.[A65536].End(xlUp).Row)
        dl = .[A65536].End(xlUp).Row + j
        Cells(dl, "A").Resize(p.Rows.Count, 6).Value = p.Value
        Set p = Nothing
        j = j + 1
        End If
    Next s
    .Range("A2:A10000").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
End Sub
PS:
avantage: plus rapide que d’utiliser le clipboard
désavantage: on perds le format (mais normalement une base de données devrai être "raw format", mais ceci est une autre histoire)
 
Dernière édition:
Re : Copier 100 onglets sur un seul ?

Bonjour,
Je reviens vers car j'aimerai abuser de votre gentillesse et de votre savoir faire ...
Bonjour à tous,

Mais je m'aperçois que ce code ne prend pas en compte le fait que si une ligne est vide alors on passe à l'onglet suivant...
J'aimerai si possible copier toutes les données même celle qui se trouve après une ligne vide.

Dans mon fichier il y a l'onglet "global" qui est censé recevoir toutes les données des onglets 01, 03, 04.
mais quand on applique le code, vous voyez que la ligne 8 de l'onglet 03 n'est pas prise en compte idem pour la ligne 7 de l'onglet 04.
Mais étrangement la ligne 7 de l'onglet 01 est bien copier malgré les espace qui la précède.

Merci pour votre aide.
 

Pièces jointes

- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
16
Affichages
1 K
Retour