Microsoft 365 Consolidation données depuis des feuilles

gpion

XLDnaute Nouveau
Bonjour
j'ai un classeur Excel que je veux remettre à mes équipes sur les investissements clients.
L'idée est d'avoir une feuille excel par clients ou groupe de clients et d'y rentrer les infos nécessaires.

Je veux ensuite que la consolidation des données se fasse dans un dernier onglet, qui reprendra une partie des données qui se trouvent dans les autres feuilles excel.

Comment puis je faire cela?

Sachant que potentiellement un nom d'onglet peut changer si le client change de nom en cours d'année, mais aussi que s'y l'on intègre de nouveaux clients, ces derniers soient aussi dans la consolidation.
J'ai essayé avec données / consolider, mais j'ai des données qui ne sont pas toutes chiffrées, car j'ai aussi des noms, donc je n'ai pas réussi.

En copie, le fichier test.

D'avance merci de votre aide

G
 

Pièces jointes

  • Consolidation Bdgt.xlsx
    13.1 KB · Affichages: 6
Solution
Bonjour Gpion,
Un essai avec :
VB:
Sub Consolider()
    Dim Ligne%, Tablo, F
    Sheets("Consolidation").[A2:D10000].ClearContents
    Application.ScreenUpdating = False
    Ligne = 3
    For Each F In Worksheets
        If F.Name <> "Consolidation" Then
            With Sheets(F.Name)
                DL = .[A10000].End(xlUp).Row
                Tablo = .Range("A2:D" & DL)
                Cells(Ligne, "A").Resize(UBound(Tablo, 1), UBound(Tablo, 2)) = Tablo
                Ligne = Ligne + UBound(Tablo) + 1
            End With
        End If
    Next F
End Sub
La consolidation se fait à partir de toutes les feuilles ( Excepté Consolidation )

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Gpion,
Un essai avec :
VB:
Sub Consolider()
    Dim Ligne%, Tablo, F
    Sheets("Consolidation").[A2:D10000].ClearContents
    Application.ScreenUpdating = False
    Ligne = 3
    For Each F In Worksheets
        If F.Name <> "Consolidation" Then
            With Sheets(F.Name)
                DL = .[A10000].End(xlUp).Row
                Tablo = .Range("A2:D" & DL)
                Cells(Ligne, "A").Resize(UBound(Tablo, 1), UBound(Tablo, 2)) = Tablo
                Ligne = Ligne + UBound(Tablo) + 1
            End With
        End If
    Next F
End Sub
La consolidation se fait à partir de toutes les feuilles ( Excepté Consolidation )
 

Pièces jointes

  • Consolidation Bdgt.xlsm
    21 KB · Affichages: 6

gpion

XLDnaute Nouveau
Bonjour Gpion,
Un essai avec :
VB:
Sub Consolider()
    Dim Ligne%, Tablo, F
    Sheets("Consolidation").[A2:D10000].ClearContents
    Application.ScreenUpdating = False
    Ligne = 3
    For Each F In Worksheets
        If F.Name <> "Consolidation" Then
            With Sheets(F.Name)
                DL = .[A10000].End(xlUp).Row
                Tablo = .Range("A2:D" & DL)
                Cells(Ligne, "A").Resize(UBound(Tablo, 1), UBound(Tablo, 2)) = Tablo
                Ligne = Ligne + UBound(Tablo) + 1
            End With
        End If
    Next F
End Sub
La consolidation se fait à partir de toutes les feuilles ( Excepté Consolidation )
Bonjour

Merci beaucoup. Ca fonctionne parfaitement bien.
Un grand merci
 

Discussions similaires

Statistiques des forums

Discussions
314 705
Messages
2 112 083
Membres
111 411
dernier inscrit
NIMY