Injecter le contenu de cellules de 200 fichiers dans un seul fichier

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

laure.saccenti

XLDnaute Nouveau
Bonjour tout le monde,

Alors voila la situation. 🙂

J'ai un gros fichier, avec une multitude d'onglets, et plein de petits fichiers mineurs. Les petits fichiers mineurs sont de deux types, soit complet, soit incomplet.

Mon gros fichier contient bcp d'onglets dont le nom correspond à la date du jour, au format suivant : jj-mm ; ces onglets se suivent chronologiquement. Parfois, certains onglets ne sont pas des dates. Ils ne rentrent pas alors ds la manipulation.

Je voudrais faire la manipulation suivante, ça passe par une macro j'imagine :

la macro injecte dans la cellule A2 de l'onglet 01-03 la somme de B3+E3 du fichier fichiercomplet_01-03.xls ; si fichiercomplet_01-03.xls n'existe pas, elle injecte depuis fichierincomplet_01-03.xls. Si aucun des deux n'existe, alors la macro n'injecte rien.

Tous mes fichiers sont ds le même répertoire.
Mes onglets date de mon gros tableau vont actuellement du 1er janv au 30 juin. Il y'a des sauts parfois entre deux dates.

Merci bcp d'avance 🙂

Laure
 
Re : Injecter le contenu de cellules de 200 fichiers dans un seul fichier

Bonjour Laure, salut KenDev,

Voici la macro :

Code:
Sub Injecte()
Dim chemin$, w As Worksheet, txt$, Wb As Workbook
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si un fichier est déjà ouvert
chemin = ThisWorkbook.Path & "\"
For Each w In ThisWorkbook.Worksheets
  If w.Name Like "##-##" Then
    txt = w.Name & ".xls"
    On Error Resume Next
    Set Wb = Workbooks.Open(chemin & "fichiercomplet_" & txt)
    If Err Then
      On Error Resume Next
      Set Wb = Workbooks.Open(chemin & "fichierincomplet_" & txt)
    End If
    If Err = 0 Then
      w.[A2] = Wb.Sheets(1).[B3] + Wb.Sheets(1).[E3] 'feuille à adapter
      Wb.Close False
    End If
  End If
Next
End Sub
A+
 
Re : Injecter le contenu de cellules de 200 fichiers dans un seul fichier

Merci bcp Job75 😱

Malheureusement je suis idiote et j'avais pas vu que mes "petits fichiers" n'étaient pas exactement appellés comme je l'ai dit...

Mes petits fichiers sont au format suivant : "fichier incomplet jjmm.xls" et "fichier jjmm complet.xls"

En gros il y'a une petite différence entre le nom de l'onglet et le format date qui apparait en nom de fichier (pas de -), et les noms de fichiers eux même varient un peu.

Merci d'avance 😕
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour