Menu

Enregistrer un fichier avec le N° de la semaine [Résolu/Fermé]

poupanano 18 Messages postés mercredi 19 octobre 2016Date d'inscription 31 janvier 2017 Dernière intervention - 30 janv. 2017 à 15:19 - Dernière réponse : poupanano 18 Messages postés mercredi 19 octobre 2016Date d'inscription 31 janvier 2017 Dernière intervention
- 31 janv. 2017 à 14:10
Bonjour,
Une macro me crée un fichier que je voudrai enregistrer sous un nom fixe "Bon de Cde" augmenté du N° de la semaine en cours: exemple "Bon de Cde S05" pour cette semaine.
J'ai également besoin qu'il soit enregistré en .xls car les utilisateur sont équipé de la version 2003.
L'enregistrement doit se faire dans le même dossier que le fichier de la macro sans indiquer le chemin du répertoire.
Voici le code que j'ai actuellement généré par "enregistrer une macro":
ActiveSheet.EnableSelection = xlNoRestrictions
ChDir "E:\Grâdhü"
ActiveWorkbook.SaveAs Filename:="E:\Grâdhü\Bon de Cde.xls", FileFormat:= _
xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

Merci d'avance pour votre aide




Afficher la suite 

4 réponses

michel_m 15285 Messages postés lundi 12 septembre 2005Date d'inscriptionContributeurStatut 16 mai 2018 Dernière intervention - Modifié par michel_m le 30/01/2017 à 15:41
0
Utile
BONJOUR

ta macro modifiée avec le numéro de la semaine
'ActiveSheet.EnableSelection = xlNoRestrictions 'INUTILE
'ChDir "E:\Grâdhü" 'INUTILE
sem = DatePart("ww", Date, vbMonday, vbFirstFourDays)
ActiveWorkbook.SaveAs Filename:="E:\Grâdhü\Bon de Cde_S" & sem & ".xls"
'INUTILE:FileFormat:= _
xlExcel8 , Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

 Michel
poupanano 18 Messages postés mercredi 19 octobre 2016Date d'inscription 31 janvier 2017 Dernière intervention - 30 janv. 2017 à 16:26
0
Utile
Super Michel Merci
La réponse est rapide et ça fonctionne parfaitement

Si ce n'est pas abuser, j'ai 2 requêtes:
1_Le fichier de base peut être rangé ailleurs et j'ai besoin que le nouveau fichier soit dans le même dossier que lui quelque soit le chemin.
2_Le N° de semaine peut-il s'afficher sur 2 caractères (05 pour la semaine 5) afin de pouvoir les classer dans l'ordre par la suite.
michel_m 15285 Messages postés lundi 12 septembre 2005Date d'inscriptionContributeurStatut 16 mai 2018 Dernière intervention - 31 janv. 2017 à 09:09
0
Utile
bonjour

Pas compris le 1

pour le 2
Dim sem as String
sem = Format(DatePart("ww", Date, vbMonday, vbFirstFourDays), "00")
attention, format renvoie un string (texte)
poupanano 18 Messages postés mercredi 19 octobre 2016Date d'inscription 31 janvier 2017 Dernière intervention - 31 janv. 2017 à 14:10
0
Utile
Merci Michel
Le format est OK

Je ne comprend pas la mise en garde "attention, format renvoie un string (texte) "

Pour préciser le point 1_:
je voudrait l'enregistrer sous un classeur excel .xls dans le même dossier que le fichier d'origine, sans spécifier de chemin dans la macro; peut-être la commande suivante:
ThisWorkbook.SaveAs myfile
mais je ne sait pas où la placer