enregistrement d'un fichier

philmaure

XLDnaute Impliqué
bonjour à tous,

Je souhaiterai enregistrer un fichier comportant à la fin une date sans que celle ci soit prise en compte :

exemple Accès_ au_ données_S32_2017.xls

Je souhaiterai qu'il soit enregistré sous le nom : Accès_ au_ données.xls

Merci pour votre aide
bien cordialement
Philmaure
 

Oranger

XLDnaute Occasionnel
Bonjour,

Ta demande n'est pas très claire... Tu souhaites enregistrer-sous le classeur sous un autre nom qui n'aurait pas de date, c'est ça?

Regardes:
ThisWorkbook.SaveAs "C:\Dossier\Accès_ au_ données.xls"

Cdlt,

Oranger
 
Dernière édition:

philmaure

XLDnaute Impliqué
Bonjour,

oui c'est cela mais comme j'ai plusieurs fichiers ouverts je suis obligé de le nommer par la partie du nom qui est invariable au fil des semaines.
en fait j'ai 9 fichiers ouverts avec des noms différents mais qui terminent tous par la semaine et l'année.

si je peux les appeler un par un avec seulement une partie du nom je peux ensuite les enregistrer comme je le souhaite

Cdlt
Philmaure
 

job75

XLDnaute Barbatruc
Bonjour Philmaure, Oranger,

Le plus simple c'est d'enregistrer le fichier manuellement avec le nom qu'on veut.

Sinon toujours au plus simple :
Code:
Sub a()
With ActiveWorkbook
  .SaveAs Left(.FullName, Len(.FullName) - 13)
End With
End Sub
A+
 

philmaure

XLDnaute Impliqué
j'ouvre 9 fichiers issus d'une application

chaque fichier à un om différents mais se terminent tous par la semaine et l'année.

exemple toto_S32_2017.xls

J'ai besoin de retravailler chaque fichier (suppression ou ajout de colonnes, etc...) avant export dans une base access.

Pour automatiser cela je renomme un par un les 9 fichiers avec un nom invariable, comme cela mes macro pour re travailler les fichiers chaque semaine avant export dans Access fonctionne chaque semaine

Pour éviter d'enregistrer mes 9 fichiers manuellement je cherche à les appeler un par un par la partie du nom invariable pour les enregistrer avec e nom sans les indications semaine et année


exemple fichier 1 : toto_S32_2017. xls sera enregistré sous toto.xls
fichier 2 : titi_S32_2017. xls sera enregistré sous titi.xls
etc...

Je fais cela chaque semaine mais en manuel.



cdlt
philippe
 

job75

XLDnaute Barbatruc
Re,

Autre solution qui fonctionne toujours, quelles que soient les extensions des fichiers :
Code:
Sub b()
Dim x, i
With ActiveWorkbook
  x = .FullName
  For i = 0 To 9
    x = Replace(x, i, "")
  Next
  x = Replace(x, "_S_", "")
  If x <> .FullName Then .SaveCopyAs x
End With
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
311 710
Messages
2 081 781
Membres
101 817
dernier inscrit
carvajal