Comment lier les données de plusieurs Excel dans un seul

bonsoir tout le monde,

svp j'ai 1 besoin d'urgent car je suis entrain de travailler un travail urgent

j'ai à peu pres 50 excelque je dois resumer dans seul en copiant certains cellules (les memes dans tous les fichiers excel)

le nom des fichier est NoSeguimiento (1),NoSeguimiento (2),NoSeguimiento (3).....etc jusqu' à 50

je veux les copier dans un excel que j'appel récap

l'exemple des excel est en attché

merci d'avance

Bonsoir,

une solution générique de fusion de fichiers, à tester et à éventuellement adapter. l'exemple que tu as donné ne nous éclaire pas beaucoup à comprendre le résultat que tu veux obtenir.

Sub fusionclasseur()
    Set wbf = ThisWorkbook    ' wbf reférence le classeur maitre
    Set wsc = wbf.Worksheets.Add    ' on ajoute une feuille dans le classeur maitre
    wsc.Name = "Résultat fusion"    ' on nomme la feuille " résultat fusion"

'-------------------------------
' on  demande le nom du répertoire qui contient les fichiers à fusionner  via dialogue windows
' résultat dans chemin
    Set fd = Application.FileDialog(msoFileDialogFolderPicker)
    With fd
        .Title = "Sélectionner le répertoire contenant les fichiers à fusionner"
        .Filters.Clear
        .AllowMultiSelect = False
        If .Show = -1 Then    ' si un répertoire sélectionné
            chemin = .SelectedItems(1) & "\"    ' on le met dans chemin
        Else
            Exit Sub    'pas de répertoire sélectionné, on arrête
        End If
    End With
'---------------------------------
    masque = InputBox("introduire le filtre de sélection des classeurs (défaut *.xls*)")    ' masque est le filtre des fichiers à sélectionner
    wsn = InputBox("Nom de la feuille à copier de chaque classeur (défaut première feuille trouvée)")    ' wsn nom de la feuille à copier de chaque classeur à fusionner
    If masque = "" Then masque = "*.xls*"    ' si masque est vide on attribue le filtre par défaut
    f = Dir(chemin & masque)    ' f= nom du premier fichier correspondant au critère
    ctrf = 0    ' compteur de classeurs fusionnés
    pli = 1    'première ligne sur résultat fusion
    While f <> ""    ' tant qu'il y a des fichiers(classeurs)) à fusionner
        If wbf.Name <> f Then    ' si classeur différent du classeur maitre
            ctrf = ctrf + 1
            Set wbi = Workbooks.Open(chemin & f)    ' on ouvre le classeur

            If wsn = "" Then Set wsi = wbi.Worksheets(1) Else Set wsi = wbi.Worksheets(wsn)    ' on sélectionne la feuille à fusionner =wsi
            dli = wsi.Range("A" & Rows.Count).End(xlUp).Row    ' dli dernière ligne sur wsi
            If dli > 1 Then
                If ctrf = 1 Then pl = 1 Else pl = 2    ' si premier classeur à fusionner, il faut copier l'entête
                wsi.Rows(pl & ":" & dli).Copy
                wsc.Range("a" & pli).PasteSpecial Paste:=xlPasteValues    'on copie les lignes du classeur à fusionner dans la feuille résultat de fusion
                pli = pli + dli + 1 - pl    ' on ajuste le nombre de lignes de résultat fusion
            End If

            wbi.Close    'on ferme le classeur
        End If
        f = Dir()    'on passe au classeur suivant
    Wend
End Sub
Rechercher des sujets similaires à "comment lier donnees seul"