Microsoft 365 compiler onglets excel avec VBA

Boubie

XLDnaute Nouveau
Bonjour,

Je souhaite compiler des onglets dans une base unique.

J'ai essayé des bouts de modules mais sans succès. quelqu'un peut il m'aider, svp?

Je souhaiterai avoir un onglet BASE qui consolide les informations de l'onglet Société A , onglet Société B + onglet Société C:

Chacun des onglets ont le même nombre de colonne :

Société
N° Fournisseurs
N° commande
Date comptable
Exercice
Période comptable
CA

Impossible de joindre mon fichier test avec quelques données, message "trop volumineux" alors qu'il est ultra petit!! ....C'est peut être un bug ?

Pouvez-vous m'aider malgré tout avec un exemple.

Par avance, merci de votre aide.
 

Phil69970

XLDnaute Barbatruc
Bonjour @Boubie

Impossible de joindre mon fichier test avec quelques données, message "trop volumineux" alors qu'il est ultra petit!!
Le site limite la taille des fichiers à 1 Mo
Si ton fichier "tout petit" fait plus de 1 Mo c'est normal que tu ne puisse pas le mettre.

En dernier ressort tu peut toujours le mettre sur un site tiers et mettre le lien ici. ;)

Et bien expliquer ce que tu veux faire:
Je copie ceci dans tel et tel condition et si j'ai cela alors on fait comme ça ......

Bonne lecture
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Boubie, Phil,
message "trop volumineux"
Il suffit de faire un fichier test très simple.
Un essai en PJ avec :
Code:
Sub Worksheet_Activate()
Application.ScreenUpdating = False
Range("A2:G10000").ClearContents
For Each F In Worksheets
    If F.Name <> "Base" Then
        With Sheets(F.Name)
            DL = .[A10000].End(xlUp).Row
            tablo = .Range("A2:G" & DL)
        End With
        DL = 1 + [A10000].End(xlUp).Row
        Cells(DL, "A").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo
    End If
Next F
End Sub
La reconstruction de la base se fait automatiquement lorsqu'on sélectionne la feuille Base.
Evidemment à adapter à votre vrai fichier.
 

Pièces jointes

  • MergeFeuilles.xlsm
    19.3 KB · Affichages: 6

Boubie

XLDnaute Nouveau
Bonjour Boubie, Phil,

Il suffit de faire un fichier test très simple.
Un essai en PJ avec :
Code:
Sub Worksheet_Activate()
Application.ScreenUpdating = False
Range("A2:G10000").ClearContents
For Each F In Worksheets
    If F.Name <> "Base" Then
        With Sheets(F.Name)
            DL = .[A10000].End(xlUp).Row
            tablo = .Range("A2:G" & DL)
        End With
        DL = 1 + [A10000].End(xlUp).Row
        Cells(DL, "A").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo
    End If
Next F
End Sub
La reconstruction de la base se fait automatiquement lorsqu'on sélectionne la feuille Base.
Evidemment à adapter à votre vrai fichier.
 

Boubie

XLDnaute Nouveau
Merci beaucoup Sylvanu
Je viens de tester et cela fonctionne super.
Mais seulement si mon fichier comporte BASE et les onglets à compiler.
Comment faire fonctionner la macro avec la présence d'autres onglets qui ne servent pas dnas la compil?
Merci à toi
 

Discussions similaires

Statistiques des forums

Discussions
312 247
Messages
2 086 590
Membres
103 247
dernier inscrit
bottxok