Exporte des donnes [Résolu]

Signaler
Messages postés
9
Date d'inscription
jeudi 19 octobre 2006
Statut
Membre
Dernière intervention
30 janvier 2020
-
domicol
Messages postés
9
Date d'inscription
jeudi 19 octobre 2006
Statut
Membre
Dernière intervention
30 janvier 2020
-
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

Messages postés
6555
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
20 février 2020
451
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

Messages postés
9
Date d'inscription
jeudi 19 octobre 2006
Statut
Membre
Dernière intervention
30 janvier 2020

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
cs_Le Pivert
Messages postés
6555
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
20 février 2020
451
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


domicol
Messages postés
9
Date d'inscription
jeudi 19 octobre 2006
Statut
Membre
Dernière intervention
30 janvier 2020
> cs_Le Pivert
Messages postés
6555
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
20 février 2020

merci pour la réponse toujours aussi fort
cela marche trés bien
bonne soirée et merci