Activer classeur ouvert date variable

Bonjour,

Je souhaite mettre en place une macro qui me permettra entre autres, d'activer un autre classeur ouvert dont la date change.

1er classeur : ExcelBalanceReport_5_16_2013.csv

La date est toujours celle du jour, j'ai le code ci-dessous. Mais je n'arrive pas à insérer les underscores. J'ai essayé en mettant les undersocre entre guillemets mais ça marche pas. Quand je renomme le fichier et que j'enlève les underscores, le code ci-dessous est correcte.

    aa = Year(Date) 'extrait l'année de la date d'aujourd'hui
    aa = Format(aa, "0000") 'formate l'année à 4 chiffres
    bb = Month(Date) 'extrait le mois de la date d'aujourd'hui
    bb = Format(bb, "0") 'formate le mois à 1 chiffre
    cc = Day(Date) 'extrait le jour de la date d'aujourd'hui
    cc = Format(cc, "0") 'formate le jour à 1 chiffre

    dd = "ExcelBalanceReport_" & bb & cc & aa & ".csv"

2ème classeur : 20130515 TRES - REC_VD.xlsm

La date est celle de la veille, il faut peut-être rentrer un "-1" quelque part mais ce que j'ai essayé n'a pas fonctionné.

    aa = Year(Date) 'extrait l'année de la date d'aujourd'hui
    aa = Format(aa, "0000") 'formate l'année à 4 chiffres
    bb = Month(Date) 'extrait le mois de la date d'aujourd'hui
    bb = Format(bb, "00") 'formate le mois à 2 chiffres
    cc = Day(Date) 'extrait le jour de la date d'aujourd'hui
    cc = Format(cc, "00") 'formate le jour à 2 chiffres

    dd = aa & bb & cc & " TRES - REC_VD.xlsm" 'crée le nom du classeur

Merci de votre aide.

Bonsoir

A tester

Sub Fichier_CSV()
    dd = "ExcelBalanceReport_" & Format(Date, "d_m_yyyy") & ".csv" 
End Sub

Sub Fichier_XLSM()
    dd = Format(Date - 1, "ddmmyyyy") & " TRES - REC_VD.xlsm"
End Sub

Il n'y avait qu'à intervertir le format de la date et c'est bon.

Tu es mon sauveur !

Merci.

Bonjour Banzai64,

J'ai une petite problématique tous les lundis.

Quand la macro essaie d'ouvrir le fichier, il n'y arrive pas dans la mesure où il manque une variable qui éliminerait les week-ends.

Le code que tu m'as donné renvoie à la date du dimanche, alors que je souhaiterai qu'il renvoie à la date du vendredi.

Si quelqu'un d'autre peut aider, je ne dis pas non .

Merci

Bonjour

Première idée, testes le jour et si c'est lundi enlèves 3 jours à la date du jour

Exemple

Sub test()
  If Weekday(Date, vbMonday) = 1 Then
    dd = Format(Date - 3, "ddmmyyyy") & " TRES - REC_VD.xlsm"
  Else
    dd = Format(Date - 1, "ddmmyyyy") & " TRES - REC_VD.xlsm"
  End If
End Sub

Simple & smart .

Merci

Rechercher des sujets similaires à "activer classeur ouvert date variable"