Vba

lokmanfr58 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
bonjour à tous
j'apprécirai beaucoup votre aide SVP

Sub RetriveFolder()
Dim thisMonthnumber As Integer
 Dim name As String
 Dim thisYear As Integer
 Dim thismonth As String
 Dim newdirectoryname As Variant
 
        thisMonthnumber = Month(Now)  'can write month(now) for the current month
       thisYear = Year(Now)
       name = MonthName(Month(Now), True)
         myfolder = "j:\top 2016\" & (name & thisYear)
        MsgBox ("the new folder name is" & "   " & name & "  " & thisYear)
    Fldr = Dir(myfolder, vbDirectory)
     If Len(Fldr) > 0 Then
     MsgBox (Fldr & "existe")
     Else
                         'If MsgBox("would like to create it", vbYesNo) = vbYes Then
                     MkDir (myfolder)
                     'End If
End If
    
 MsgBox ("new directory name is" & "  " & newdirectoryname)
 ActiveWorkbook.SaveAs Filename:="j:\top 2016\mars2016\" & Format(Now, "ddmmmyyyy h\hm\mss")
          'Application.Quit
        'Application.DisplayAlerts = True
End sub


but: enregistrer dans un dossier dont le nom est composé du mois et année en cours. si le dossier n'existe pas il faut le créer.
pb: mettre la variable "Fldr" dans le chemin de saveas ne marche pas.
par contre mettre "mars2016", qui est le nom du dossier créé ça marche

1 réponse

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Si existe pas: Fldr="", si existe: Fldr="nom du repertoire"

    dans les deux cas il faut le chemin complet: myfolder

    pensez a mettre une extension a votre ficher de sauvegarde

    Sub RetriveFolder()
        Dim thisMonthnumber As Integer
        Dim name As String
        Dim thisYear As Integer
        Dim thismonth As String
        Dim newdirectoryname As Variant
     
        thisMonthnumber = Month(Now)  'can write month(now) for the current month
        thisYear = Year(Now)
        name = MonthName(Month(Now), True)
        myfolder = "j:\top 2016\" & (name & thisYear)
        MsgBox ("the new folder name is" & "   " & name & "  " & thisYear)
        Fldr = Dir(myfolder, vbDirectory)
        If Len(Fldr) > 0 Then
            MsgBox (Fldr & " existe")
        Else
            MkDir (myfolder)
            MsgBox ("new directory name is" & "  " & myfolder)
        End If
        
        ActiveWorkbook.SaveAs Filename:=myfolder & "\" & Format(Now, "ddmmmyyyy h\hm\mss")
        'Application.Quit
        'Application.DisplayAlerts = True
    End Sub
    0
    1. lokmanfr58 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
       
      bonjour,

      merci pour ton aide.
      je voulais savoir interpréter "\" dans la commande SaveAs Filename:=
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > lokmanfr58 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
         
        Re
        chemin complet d'un fichier
        Disque:\repertoire\sous-repertoire\nomdefichier.extension

        myfolder ="Disque:\repertoire\sous-repertoire"
        0