Exporte des donnes

Résolu/Fermé
domicol Messages postés 53 Date d'inscription jeudi 19 octobre 2006 Statut Membre Dernière intervention 12 mai 2020 - 28 janv. 2020 à 22:56
domicol Messages postés 53 Date d'inscription jeudi 19 octobre 2006 Statut Membre Dernière intervention 12 mai 2020 - 30 janv. 2020 à 17:34
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

cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
29 janv. 2020 à 14:00
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
domicol Messages postés 53 Date d'inscription jeudi 19 octobre 2006 Statut Membre Dernière intervention 12 mai 2020 1
29 janv. 2020 à 22:31
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
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
30 janv. 2020 à 07:55
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
domicol Messages postés 53 Date d'inscription jeudi 19 octobre 2006 Statut Membre Dernière intervention 12 mai 2020 1 > cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024
30 janv. 2020 à 17:34
merci pour la réponse toujours aussi fort
cela marche trés bien
bonne soirée et merci
0