Partage
  • Partager sur Facebook
  • Partager sur Twitter

(EXCEL] Remplir Automatiquement des fichiers tiers

    26 janvier 2021 à 17:12:49

    Bonjour à tous et toutes,

    Aujourd'hui, je vous contact pour l'amélioration d'un process que je met en place dans mon travail.

    Fonctionnement actuel: 

    J'ai un tableau de ce type, ce tableau me permet de créer automatique des dossiers et sous dossiers qui contient des fichiers.

    Ici nous créons le dossier: A1/B1/C1/D1 et le dossier D1 possède donc 3 fichiers par défaut.

    Cette action est géré par la macro suivante (vous aurez peut être des suggestions d'amélioration du code):

    Sub B°creationRepertoires()
        Dim DossierDeDepart As String
        Dim CheminSource As String
        Dim lig As Long, col As Long, i As Long
        On Error Resume Next
        CheminSource = "CHEMIN SOURCE DES FICHIERS A COPIER"
        DossierDeDepart = ActiveWorkbook.path & "\"
        'ou chemin de ton choix par exemple
        'DossierDeDepart = "D:\"
          
        For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
            Dim path As String
            path = "\" & Cells(i, 1).Value
            MkDir DossierDeDepart & path
            Dim j As Integer
            For j = 2 To Cells(1, Columns.Count).End(xlToLeft).Column
                path = path & "\" & Cells(i, j).Value
                MkDir DossierDeDepart & path
                  
                If (j = 4) Then 'dossier spe pour chaque D
                        FileCopy CheminSource & "\" & "FICHIER1.xls", DossierDeDepart & path & "\" & "FICHIER1.xls"
                        FileCopy CheminSource & "\" & "LIEN FICHIER2.xlsx", DossierDeDepart & path & "\" & "LIEN FICHIER2.xlsx"
                        FileCopy CheminSource & "\" & "FICHIER3.xlsx", DossierDeDepart & path & "\" & "FICHIER3.xlsx"
                End If
            Next
        Next
    End Sub
    

    Comme vous avez pu le constater il existe dans mon tableau une colonne E, qui contient des informations.

    J'aimerais pouvoir récupérer les informations de la colonne E lié au dossier de la colonne D, pour remplir les cellules du FICHIER1.xls

    Potentiellement il peux y avoir plusieurs lignes identiques à l'exception de la colonne E (colonnes A, B, C et D identique avec E différent pour chaque ligne).

    Merci d'avance pour votre aide.

    Bonne journée.

    • Partager sur Facebook
    • Partager sur Twitter
      27 janvier 2021 à 13:08:44

      avec ton code, tu créé un dossier correspondant à la valeur de ta colonne E (à cause de la seconde boucle for)

      tu devrais aussi tester l'existence du dossier à créer avant de le créer

      pour le traitement de la colonne E, il faut "ouvrir" le fichier avec un workbooks.open (de mémoire) et y mettre les données selon les infos de E (on peut pas t'aider sur cette partie, ne sachant pas le type d'infos de E et comment tu veux remplir le fichier avec)

      • Partager sur Facebook
      • Partager sur Twitter
        10 février 2021 à 8:10:12

        Bonjour Umfred,

        Ce que j'essai de faire, c'est du coup, arrêter la création de mon dossier à la colonne D et que la colonne E soit les information à intégrer dans l'un de mes fichiers créer dans le dossier de la Colonne D.

        Le code actuel de création répond très bien à mes attentes, car si le dossier existe et qu'il y a de nouvelles lignes, alors les lignes s'ajoutent au dossier existant, donc pas de problème pour mon utilisation de ce coté la.

        Les informations de la Colonne E sont des informations de type texte, je me renseignerais sur le workbooks.open pour voir ce que je trouve.

        Merci pour ton retour Umfred, je reviens ici quand j'aurais un peu avancé sur mon projet.

        • Partager sur Facebook
        • Partager sur Twitter

        (EXCEL] Remplir Automatiquement des fichiers tiers

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown