Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

jours ouvrables

C

clav

Guest
Bonjour,

je crée un rapport quotidien avec une macro qui importe des données d'un .csv qui a pour nom la date de la veille. Dans le code VB de la macro, pour le nom du fichier a importer, j'ai mis :

jour = Format(Day(Date - 1), '##00')
mois = Format(Month(Date), '##00')
annee = Format(Year(Date), '####0000')
csv_a_ouvrir = jour & mois & annee & '.csv'

Le probleme c'est que les .csv ne sont la que pour les jours ouvrables. Autrement si je lance ma macro un lundi, excel va chercher a ouvrir le .csv du dimanche (qui n'existe pas...) d'ou un message d'erreur.
Comment puis-je faire pour que le code comprenne que les lundis il doit chercher le fichier du vendredi (soit Day(Date-3))?

Merci de votre aide,

clav
 
J

JC de Lorient

Guest
Bonjour Clav, le forum

en rajoutant cette condition ça doit marcher

jour = Format(Day(Date - 1), '##00')
If Format(Date, 'dddd') = 'lundi' Then
jour = Format(Day(Date - 3), '##00')
End If

JC
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Remplace ton code par celui-ci et je pense que cela devrait faire l'affaire

csv_a_ouvrir = IIf(Weekday(Date, vbMonday) = 1, Format(Date - 3, 'ddmmyyyy') & '.csv', Format(Date - 1, 'ddmmyyyy') & '.csv')


Bon courage
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…