IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Création de dossier et sous dossier pour enregistrement de fichier [XL-2019]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Chef d'équipe
    Inscrit en
    Juin 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 9
    Par défaut Création de dossier et sous dossier pour enregistrement de fichier
    Bonjour à tous,
    Tout d'abord je tiens à remercier tous les intervenants sur ce forum qui m'a beaucoup aider et dans lequel j'ai toujours pu trouver des astuces.
    Je ne suis pas très fort en VBA mais j'arrive assai régulièrement à modifier des codes trouvé sur la toile pour réaliser mon travail.
    Je continue a apprendre lentement.
    Voici mon problème:
    J'ai créé un fichier pour les plannings de mon personnel, je l'ai édite tous par une macro avec le nom de chaque employé.
    Cela fonctionne très bien mais il me faut ranger tout ces fichiers dans des dossiers et j'aimerais le faire automatiquement.
    A l'heure actuelle sur la page "Employés" lorsque j'appuie sur le bouton Générer tous les calendriers, il me crée un dossier avec comme nom l'année et il me mets tous les fichiers dedans avec le nom qui se trouve dans la colonne H
    Je voudrais que sur le bouton "Générer par services" il me crée également tous les sous dossier se trouvant dans la colonne G "Services" et qu'il fasse le tri automatiquement
    Autre problème que je rencontre l'affichage des boutons ne se fait pas correctement à l'ouverture du fichier, je suis obligé de faire un clic droit dessus
    le fichier :V_15.8 - test dossier - Copie.xlsm

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Private Sub CommandButton1_Click()
    Dim Fe As Worksheet
    With ListObjects(1).Range 'tableau structuré
        Dim chemin$, dossier$, fichier$, i&
        chemin = ThisWorkbook.Path & "\"
        dossier = chemin & "Planning news\"
        If Dir(dossier, vbDirectory) = "" Then MkDir dossier 'création du dossier
        '---suppression des fichiers---
        fichier = Dir(dossier & "*.xlsm")
        On Error Resume Next
        While fichier <> ""
            Workbooks(fichier).Close False 'si l'un des fichiers est ouvert on le ferme
            Kill dossier & fichier
            fichier = Dir
        Wend
        On Error GoTo 0
        '---création des fichiers .xlsm---
        Application.DisplayAlerts = False
        fichier = ThisWorkbook.FullName 'mémorise
        For i = 2 To .Rows.Count
            '---Copie des matricules dans les enregistrements de fichiers---
            Sheets("Calendrier").Range("B5") = .Cells(i, 1)
     
           '---Vérrouillage fichier à sauvegarder---
     
            Sheets("Log changements").Range("C2").Value = "Verrouillage Actif"
    Sheets("Log changements").Range("C2").Font.ColorIndex = 3
     
        For Each Fe In Sheets
            'If Fe.Name = "Log changements" And Fe.Name = "Calendrier" Then Fe.Protect "letalcestblanc"
            If Fe.Name <> "Log changements" And Fe.Name <> "Calendrier" Then Fe.Visible = False
        Next Fe
     
        Sheets("Log changements").Protect "letalcestblanc"
        Sheets("Calendrier").Activate
        Sheets("Calendrier").Protect "letalcestblanc"
        ActiveWorkbook.Protect "letalcestblanc"
     
    '---Copie du fichier avec nom---
            If .Cells(i, 7) <> "" Then ThisWorkbook.SaveAs dossier & .Cells(i, 7) & " " & Range("K1") & ".xlsm", 52 'fichier .xlsm
     
           '---Deprotection fichier actif---
     
           ActiveWorkbook.Unprotect "letalcestblanc"
    For Each fc In Worksheets
            fc.Visible = xlSheetVisible
            fc.Unprotect "letalcestblanc"
        Next
        Sheets("Log changements").Range("C2").Value = "Verrouillage Inactif"
    Sheets("Log changements").Range("C2").Font.ColorIndex = 4
    Sheets("Log changements").Activate
        Next
     
     
    End With
    ThisWorkbook.SaveAs fichier, 52 'fichier .xlsm
    End Sub

  2. #2
    Membre Expert Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 1 222
    Par défaut
    Hello,

    Citation Envoyé par jpp1230 Voir le message
    Je voudrais que sur le bouton "Générer par services" il me crée également tous les sous dossier se trouvant dans la colonne G "Services" et qu'il fasse le tri automatiquement
    pour clarifier : dans le dossier "dossier" (2024 actuellement) il faut créer un dossier pour chaque services qui se trouve dans la colonne G et le nommer avec K1 et le nom qui est dans la colonne H ?

    Voici un essai
    Fichiers attachés Fichiers attachés

  3. #3
    Membre habitué
    Homme Profil pro
    Chef d'équipe
    Inscrit en
    Juin 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 9
    Par défaut
    Citation Envoyé par Nain porte koi Voir le message
    Hello,


    pour clarifier : dans le dossier "dossier" (2024 actuellement) il faut créer un dossier pour chaque services qui se trouve dans la colonne G et le nommer avec K1 et le nom qui est dans la colonne H ?

    Voici un essai
    Merci à toi, c'est exactement ce que je voulais.
    C'est plus que parfait !!!

  4. #4
    Membre habitué
    Homme Profil pro
    Chef d'équipe
    Inscrit en
    Juin 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 9
    Par défaut
    Citation Envoyé par Nain porte koi Voir le message
    Hello,


    pour clarifier : dans le dossier "dossier" (2024 actuellement) il faut créer un dossier pour chaque services qui se trouve dans la colonne G et le nommer avec K1 et le nom qui est dans la colonne H ?

    Voici un essai
    Bonjour,
    Sans vouloir abuser de ta gentillesse et de tes compétences, si je souhaité ne choisir qu'un service à éditer par combobox ou autre comment dois je mis prendre.
    Si tu peux m'orienter que j'essaye par moi même se serai top

  5. #5
    Membre Expert Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    1 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 1 222
    Par défaut
    Hello,

    voici
    Fichiers attachés Fichiers attachés

  6. #6
    Membre habitué
    Homme Profil pro
    Chef d'équipe
    Inscrit en
    Juin 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef d'équipe
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 9
    Par défaut
    Citation Envoyé par Nain porte koi Voir le message
    Hello,

    voici
    Merci pour cette solution, j'y étais quand même arrivé en passant par un userform.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2016] Sélecteur de dossier pour importer un fichier Excel
    Par MakSLR dans le forum VBA Access
    Réponses: 6
    Dernier message: 14/08/2017, 21h16
  2. Exclusion de noms de dossiers pour liste de fichiers
    Par koKoTis dans le forum Langage
    Réponses: 10
    Dernier message: 07/09/2014, 20h07
  3. Réponses: 1
    Dernier message: 27/04/2010, 10h10
  4. Parcourir dans un dossier et enregistrer un fichier
    Par chriswhite06 dans le forum ASP.NET
    Réponses: 12
    Dernier message: 16/07/2007, 12h31
  5. code pour enregistré un fichier sous different nom
    Par france38 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 28/10/2006, 13h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo