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
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