Enregistrer un fichier dans un nouveau répertoire créé

fopy12

Habitué
Bonjour :hello:,

J'aurais besoin d'une aide sur un problème.

En fait le code ci dessous me permet dans un premier temps de crééer un nouveau répertoire.
Ensuite j'aimerais créer un nouveau fichier excel et l'enregistrer dans ce nouveau répertoire qui vient d'être crééer.
C'est là que ça bloque : au niveau du chemin où le fichier doit être enregistré (la dernière ligne de code).

Merci d'avance de votre aide

Code:
Option Explicit
' 1.CREER NOUVEAU DOSSIER ET LUI DONNER LE NOM DU "MOIS EN COURS"
'-------------------------------------------------------------------------------------------------------
Sub NvoTaborMois()
Dim MonChemin As String
MonChemin = "C:\My Documents\AUTRES"
On Error Resume Next 
MkDir MonChemin & "\" & UCase(Format(Date, "mmmm"))
On Error GoTo 0
End Sub

' 2. enregistrer 
'----------------------------------------------------------
'Créér un nouveau fichier Excel
Dim NvoClasseur As Workbook
Set NvoClasseur = Workbooks.Add
Dim MessageB
MessageB = MsgBox("Veuillez coller les données extraites", 1)
If MessageB = vbCancel Then 'si l'utilisateur clique sur "annuler"
NvoClasseur.Close 'alors fermer le classeur nouvellement créé
End If
'Sauvegarde du Nouveau Classeur
NvoClasseur.SaveAs Filename:="C:\My Documents\AUTRES" & MonChemin & "\monclasseur.xls"
End Sub
 

zeb

Modérateur
Salut,

Et simplement en relisant ton code ?

Ligne 10, tu mets une constante dans une variable. Soit.
Ligne 12, tu crées ton dossier, mais tu ne mets pas son nom dans ta variable. Bon.
Ligne 27, tu voudrais que le nom du dossier viennent par miracle dans ton chemin. Ben non.......

----------------

Non mais qu'est-ce que c'est que cette ligne 7 ????? :ouch:
Tu t'imagines que VB ne sait pas récupérer le mois en cours ?

Code:
Mois_en_cours_et_en_majuscule = UCase(Format(Date, "mmmm"))
 

fopy12

Habitué
J'ai corrigé la première partie du code.


Oui ... :)
enfin, je veux bien l'avoir :)
J'ai creusé et après plusieurs tentatives, pas de miracle.
T'aurais un indice au moins
merci

 

fopy12

Habitué
ah mais j'ai déjà l'indice !
Code:
1.Mois_en_cours_et_en_majuscule = UCase(Format(Date, "mmmm"))

Merci Zeb :bounce:

Code:
Option Explicit
Sub NvoTaborMois()
Dim MonMois
Dim MonChemin As String
MonChemin = "C:\My Documents\AUTRES"
On Error Resume Next 
MonMois = UCase(Format(Date, "mmmm"))
MkDir MonChemin & "\" & MonMois
On Error GoTo 0

' 2. enregistrer 
'----------------------------------------------------------
'Créér un nouveau fichier Excel
Dim NvoClasseur As Workbook
Set NvoClasseur = Workbooks.Add
Dim MessageB
MessageB = MsgBox("Veuillez coller les données extraites", 1)
If MessageB = vbCancel Then 'si l'utilisateur clique sur "annuler"
NvoClasseur.Close 'alors fermer le classeur nouvellement créé
End If
'Sauvegarde du Nouveau Classeur
NvoClasseur.SaveAs Filename:="C:\My Documents\AUTRES\" & MonMois & "\monclasseur.xls"
End Sub
 

zeb

Modérateur
Mouhais.....

Et comme ça :
Code:
MonChemin = "C:\My Documents\AUTRES\" & UCase(Format(Date, "mmmm"))
...
MkDir MonChemin
...
NvoClasseur.SaveAs MonChemin & "\monclasseur.xls"

En appliquant un bon vieux principe : moins c'est compliqué, plus c'est simple.
:o

.
.
.
.
:lol:





 

fopy12

Habitué


ouais j'avoue...:merci:

comment on met "résolu" maintenant?
 

zeb

Modérateur
Tu n'as pas posé une question mais tu as ouvert un débat.
Donc, pas de résolution à un tel sujet.

Il aurait fallut cocher la case "attribuer des points" à la création du sujet.
Voilà !
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 064
Membres
1 586 286
Dernier membre
petitangebleu1977
Partager cette page
Haut