Exporte des donnes

Résolu
bonjour a tous et toutes
j ai un fichier excel avec une macro qui me crée un dossier et des sous dossiers
je voudrais enregistre la page "BILAN" dans un sous dossier par apport au nom qu il y a dans la case C6 (arthur dans le dossier "a" valerie dans le sous dossier "v" etc....)
et aprés pouvoir le récupérer quand je tape en C6 "arthur"
merci
bonne soirée

https://www.cjoint.com/c/JACv3R8COZi

2 réponses

  1. Contributeur
    Bonjour,

    le dossier nommé par la cellule C6 sera créé dans le même dossier que le classeur contenant la macro.
    Le classeur nommé par la cellule C6 sera enregistré dans le nouveau dossier en xlsx

    Sub test()
    Dim chemin_dossier As String
    chemin_dossier = ThisWorkbook.Path & "\" & Range("C6").Value
    If Dir(chemin_dossier, vbDirectory) <> vbNullString Then
    
    Else
    MkDir (chemin_dossier)
    End If
    MsgBox ("dossier cree")
    Application.DisplayAlerts = False
    
    ThisWorkbook.Sheets("bilan").Copy
    ActiveWorkbook.SaveAs Filename:=chemin_dossier & "\" & Range("C6").Value & ".xlsx"
    ActiveWorkbook.Close
    
    Application.DisplayAlerts = True
    
    End Sub
    

    1
    1. merci CS le pivert
      trop fort
      serrait il possible de ne pas créer un dossier C6 mais de l enregistre sous le nom C6 dans le dossier ou se trouve le fichier de base
      encore merci
      0
      1. Contributeur
        comme ceci:

        Option Explicit
        Sub test()
        Dim chemin_dossier As String
        chemin_dossier = ThisWorkbook.Path
        Application.DisplayAlerts = False
        If FichierExiste(chemin_dossier & "\" & Range("C6").Value & ".xlsx") = True Then
               MsgBox "Le fichier existe ...", vbCritical, "Création fichier"
        Else
        ThisWorkbook.Sheets("bilan").Copy
        ActiveWorkbook.SaveAs Filename:=chemin_dossier & "\" & Range("C6").Value & ".xlsx"
        ActiveWorkbook.Close
        Application.DisplayAlerts = True
        MsgBox "Votre fichier " & Range("C6").Value & " est créé", vbInformation, "Création fichier"
         End If
        End Sub
        'voir si le fichier existe
        Public Function FichierExiste(MonFichier As String)
        'par Excel-Malin.com ( https://excel-malin.com )
        If Len(Dir(MonFichier)) > 0 Then
              FichierExiste = True
           Else
              FichierExiste = False
           End If
        End Function
        
        

        0
      2. @cs_Le Pivertmerci pour la réponse toujours aussi fort
        cela marche trés bien
        bonne soirée et merci
        0