Microsoft 365 enregistrer un fichier avec des dates modulables

Excellerateur

XLDnaute Occasionnel
Très chers valeureux membres bonjouuuurnooo!

Je vous sollicite pour deux difficultés que j'ai ce matin SVP.

- Premièrement, je voudrais pouvoir concatener un texte avec une date au forma (jj/mm/aaaa) mais ma formule ci-dessous ne m'affiche que le format (j/m/aaaa)
VB:
=CONCATENER("Fichier du ";JOUR(B20);MOIS(B20);ANNEE(B20))

- Deuxièmement, j'ai fait une macro qui enregistre le fichier (fichier joint) dans un de mes dossiers en y attribuant le nom du fichier qui est concatené avec la date,
mais comme il s'agit d'une macro, j'essaye de modifier le code pour ne pas que le même nom apparaisse sur tous les fichiers qui seront enregistrés.
Pour ce faire, je suis allé dans le gestionnaire de noms, j'ai attribué un nom à la cellule qui me sert de référence pour le nom (ici la cellule "B16") mais je n'arrive pas à l'adapter à mon code.

Voici ce que donne le code après enregistrement:
Code:
Sub Enregistrer_pays_test()
'
' Enregistrer_pays_test Macro
'

'
    Sheets("Calculs ratios").Select
    Range("B16").Select
    Selection.Copy
    Application.CutCopyMode = False
    ChDir "C:\Users\Excellerateur\Desktop\Perso"
    Range("B16").Select
    Selection.Copy
    Application.CutCopyMode = False
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\Excellerateur\Desktop\Perso\Fichier du 1562021.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
    Range("D16").Select
End Sub
Dans gestionnaire de nom j'ai donné "NomDuFichier" comme nom à la cellule "B16"

Quand je remplace le nom dans le code, ça me met plutôt le nom enregistré dans le gestionnaire de nom au lieu du nom du fichier défini dans la cellule "B16".

Je sais que trop de papotage embrouille... 🤪.

Retrouvez le fichier en copie.

j'espère tout de même que vous avez compris ce que j'essaye de dire en français excelleux 😜

Merci d'avance pour votre attention.

Excellement votre,

@Excellerateur
 

Pièces jointes

  • pays-et-ratios-V10.xlsx
    13.8 KB · Affichages: 7

Jacky67

XLDnaute Barbatruc
Très chers valeureux membres bonjouuuurnooo!

Je vous sollicite pour deux difficultés que j'ai ce matin SVP.

- Premièrement, je voudrais pouvoir concatener un texte avec une date au forma (jj/mm/aaaa) mais ma formule ci-dessous ne m'affiche que le format (j/m/aaaa)
VB:
=CONCATENER("Fichier du ";JOUR(B20);MOIS(B20);ANNEE(B20))

- Deuxièmement, j'ai fait une macro qui enregistre le fichier (fichier joint) dans un de mes dossiers en y attribuant le nom du fichier qui est concatené avec la date,
mais comme il s'agit d'une macro, j'essaye de modifier le code pour ne pas que le même nom apparaisse sur tous les fichiers qui seront enregistrés.
Pour ce faire, je suis allé dans le gestionnaire de noms, j'ai attribué un nom à la cellule qui me sert de référence pour le nom (ici la cellule "B16") mais je n'arrive pas à l'adapter à mon code.

Voici ce que donne le code après enregistrement:
Code:
Sub Enregistrer_pays_test()
'
' Enregistrer_pays_test Macro
'

'
    Sheets("Calculs ratios").Select
    Range("B16").Select
    Selection.Copy
    Application.CutCopyMode = False
    ChDir "C:\Users\Excellerateur\Desktop\Perso"
    Range("B16").Select
    Selection.Copy
    Application.CutCopyMode = False
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\Excellerateur\Desktop\Perso\Fichier du 1562021.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
    Range("D16").Select
End Sub
Dans gestionnaire de nom j'ai donné "NomDuFichier" comme nom à la cellule "B16"

Quand je remplace le nom dans le code, ça me met plutôt le nom enregistré dans le gestionnaire de nom au lieu du nom du fichier défini dans la cellule "B16".

Je sais que trop de papotage embrouille... 🤪.

Retrouvez le fichier en copie.

j'espère tout de même que vous avez compris ce que j'essaye de dire en français excelleux 😜

Merci d'avance pour votre attention.

Excellement votre,

@Excellerateur
Bonjour,
En B16
="Fichier du " &TEXTE($B$20;"jj-mm-aaaa")
OU si c'est la date du jour on peut se passer de B20
="Fichier du " &TEXTE(AUJOURDHUI();"jj-mm-aaaa")
Et en vba (on peut se passer de la cellule B16 (au choix)
VB:
Sub Enregistrer_pays_test()
Dim Chemin$
' Enregistrer_pays_test Macro
'
    Sheets("Calculs ratios").Select
    Chemin = "C:\Users\Excellerateur\Desktop\Perso\"
    ActiveWorkbook.SaveAs Chemin & [b16], FileFormat:=52
    'ou sans la cellule B16 et la date du jour
    'ActiveWorkbook.SaveAs Chemin & "Fichier du " & Format(Date, "dd-mm-yyyy"), FileFormat:=52
    Range("D16").Select
End Sub
Il faut évidemment que tous ces répertoires existent sur le lecteur C
C:\Users\Excellerateur\Desktop\Perso\
 

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 192
Membres
102 809
dernier inscrit
Sandrine83