Concaténation de feuilles spécifiques de plusieurs classeurs excel dans un seul class

Anna_2013

XLDnaute Junior
Bonsoir
Je souhaiterais fusionner plusieurs classeurs excel en un seul classeur.
J'ai obtenu la macro suivante cependant lors de la copie des classeurs je ne souhaiterais récupérer les onglets qui ne sont pas nommés 'retrieve'.
Pourriez vous svp m'aider à l'adapter.
Merci par avance pour votre aide,
'récupère dans une série de classeurs fermés (dans le même répertoire)
'les valeurs d'une plage et les écrit dans la feuille active

Sub LoopThruFiles()
Dim place As String
Dim FilesArray() As String, FileCounter As Integer
Dim FName As String, LoopCounter As Integer

FName = Dir("c:\*.xls")
Do While Len(FName) > 0
FileCounter = FileCounter + 1
ReDim Preserve FilesArray(1 To FileCounter)
FilesArray(FileCounter) = FName
FName = Dir()
Loop
If FileCounter > 0 Then
Application.ScreenUpdating = False
For LoopCounter = 1 To FileCounter

x = LoopCounter
'calcul de la plage de destination
place = Range(Cells((((x - 1) * 10) + 2), 1), Cells(((x * 10)), 3)).Address
GetValues "c:", FilesArray(LoopCounter), "Blad1", "a1:c10", place
Next
Application.ScreenUpdating = True
End If
End Sub

Sub GetValues(fPath As String, FName As String, sName, _
cellRange As String, place As String)
'recopie une plage des valeurs externes dans une plage de
'la feuille active sous forme d'une formule matricielle
With ActiveSheet.Range(place)
.FormulaArray = "='" & fPath & "\[" & FName & "]" & sName & "'!" & cellRange
.Value = .Value
End With
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 299
Messages
2 086 989
Membres
103 420
dernier inscrit
abdel665