Classer un fichier dans un dossier en fonction de sa date VBA

Bonjour à tous , je vous expose mon problème je crée des fichier PDF a partir d'une feuille excel, j'ajoute dans le nom du fichier le format date -1 afin d'avoir toujours la date enferieur vu que le début du fichier est le même et que chaque jour on fait un nouveau rapport.

J'aimerais donc récupéré ce format date et lui dire si la date est 01/01\2018 alors classer dans R:\dossier\janvier 2018 ; si la date est 01/02/2018 alors classer dans R:\dossier\fevrier 2018 et ainsi de suite.

Quelqu'un sait-il comment faire ?

Voici ce que j'ai a l'instant :

 

 Private Sub PDF_Click()
On Error Resume Next
Dim Chemin As String, nomfichier As String

'Partie sauvegarde du fichier ON

  nomfichier = "truc" & "_" & Format(Date - 1, "dd_mm_yyyy") & ".pdf"

    Chemin = "F:\"

     Range("B4:H34").Select

        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & nomfichier, _
                                          Quality:=xlQualityStandard, IncludeDocProperties:=True, _
                                          IgnorePrintAreas:=False, OpenAfterPublish:=True
'Partie sauvegarde du fichier off
End Sub

 

Merci d'avance.

J'ai tenté ça mais ça n'as rien donné

Private Sub PDF_Click()
On Error Resume Next
Dim Chemin As String, nomfichier As String

'Partie sauvegarde du fichier ON

  nomfichier = "truc" & "_" & Format(Date - 1, "dd_mm_yyyy") & ".pdf"

    If nomfichier = "truc" & "_" & Format(Date - 1, "dd_06_2018") & ".pdf" Then

    Chemin = "R:\Dossier\juin 2018"

    ElseIf nomfichier = "Rapport_CZ" & "_" & Format(Date - 1, "dd_07_2018") & ".pdf" Then

    Chemin = "R:\Dossier\juillet 2018"

    End If

     Range("B4:H34").Select

        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & nomfichier, _
                                          Quality:=xlQualityStandard, IncludeDocProperties:=True, _
                                          IgnorePrintAreas:=False, OpenAfterPublish:=True

'Partie sauvegarde du fichier off
End Sub

Bonjour Calican, bonjour le forum,

Peut-être comme ça :

Private Sub PDF_Click()
Dim Chemin As String, nomfichier As String
Dim D As Date
Dim M As String
Dim Y As String

On Error Resume Next
D = Date - 1
M = Format(Month(D), "mmmm")
Y = CStr(Year(D))
Chemin = "F:\" & M & " " & Y
nomfichier = "truc" & "_" & Format(Date - 1, "dd_mm_yyyy") & ".pdf"
Range("B4:H34").Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & nomfichier, _
            Quality:=xlQualityStandard, IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

Bonsoir, je vais essayer merci

Re je vois que tu as défini la variable D sur D = Date -1 mais Date = Jour/mois/année

J'ai du mal a comprendre le système , en tout cas je n'ai pas reussi a récuperer le fichier dans le dossier voulu.

En fait il y'a un chemin dans mon disque R ou il y'a juillet 2018 , et j'aimerais comparer la date des noms des fichiers pdf a l'endroit

Format(Date - 1, "dd_mm_yyyy")

et lui dire quelque chose du genre

if mois et année de fomat date -1 = 06 (mois)/ 2018 (année) alors stocker dans le dossier juin 2018.

Re,

Désolé mais la c'est moi qui ne comprend plus... je n'ai fait que modifier ton code. C'est toi qui a parlé de Date - 1... De là, j'en ai extrait le Mois au format mmm (janvier, février... décembre) et l'année Y ce qui me permet de définit le Chemin :

Chemin = "F:\" & M & " " & Y

Re bonjour, excuse moi, dur journée je n'avais pas bien compris le raisonnement mais de bon matin ça va mieux.

J'adapte le code a mes chemin et je reviens vers vous pour donner des nouvelles du résultat.

Voila j'ai tenter des choses , ça n'a pas fonctionné je vous envoie des photos, si vous êtes toujours d'accord pour m'aider j'aimerais procéder autrement

j'aimerais si possible récupéré la date du textbox sous le calendrier et mettre celle ci derriere le nom de mon fichier pdf a la place de

Format(Date - 1, "dd_mmmm_yyyy") & ".pdf"

et a partir ce cette même date dire si la valeur est dd_07_2018 alors tu ira stocker dans R:\(et tout le chemin)

Est-ce possible?

Merci de votre aide.

Rechercher des sujets similaires à "classer fichier dossier fonction date vba"