Consolidation de données au sein d'un classeur

Hugues

XLDnaute Impliqué
Bonjour,

Je poursuis mon projet de compilation de données contenues dans différentes feuilles d'un classeur, afin de les inscrire dans une feuille unique.
Exemple : quatre feuilles contenant des données que je souhaiterais compiler dans une feuille nommée "Conso".

J'ai un souci dans le code ; la procédure se met en erreur.



Private Sub CommandButton1_Click()


' Effacement des données de la feuille conso avant réimportation des données
Sheets("conso").[A1].CurrentRegion.Offset(1, 0).ClearContents

' Récupération des données sur les différentes feuilles du classeur, sauf la feuille sommaire
For Each s In ThisWorkbook.Worksheets
If s.Name <> "Sommaire" Then
Nlig = Sheets(s).[A65536].End(xlUp).Row
Ncol = Sheets(s).[A1].CurrentRegion.Columns.Count
'MsgBox (Sheets(s).Name & " ==> Nbre ligne = " & Nlig & " ; Nbre colonnes = " & Ncol)
Sheets("conso").Range("A65536").End(xlUp).Offset(1, 0).Resize(Nlig, Ncol).Value = Sheets(s).[A2].Resize(Nlig, Ncol).Value

End If
Next

' Message de fin
Message = "Importation des données terminée"
Message = Message & vbNewLine & vbNewLine
Message = Message & "Vous pouvez consulter la feuille conso "

boite = MsgBox(Message, 64, "IMPORTATION")


End Sub

Pourriez vous m'aider ?

Merci par avance,

Hugues
 

Pièces jointes

  • compilation_données_classeur3.xls
    73 KB · Affichages: 39
  • compilation_données_classeur3.xls
    73 KB · Affichages: 41
  • compilation_données_classeur3.xls
    73 KB · Affichages: 42

Nairolf

XLDnaute Accro
Re : Consolidation de données au sein d'un classeur

ton erreur à lieu là:
Nlig = Sheets(s).[A65536].End(xlUp).Row
car "s" est déjà une feuille, il faut mettre ça:
Nlig = s.[A65536].End(xlUp).Row
la même chose pour les autres lignes utilisant la sheet "s"
 

Discussions similaires

Réponses
2
Affichages
142

Statistiques des forums

Discussions
312 492
Messages
2 088 893
Membres
103 982
dernier inscrit
krakencolas