Bonjour,
J'essaye désespérément de mettre le mois et le jour sur deux caractères obligatoirement mais tant que l'un des deux est inférieur à 10, ça ne le fait pas.
J'ai fouillé dans le forum en vain.
Merci d'avance pour votre aide
![]()
Bonjour,
J'essaye désespérément de mettre le mois et le jour sur deux caractères obligatoirement mais tant que l'un des deux est inférieur à 10, ça ne le fait pas.
J'ai fouillé dans le forum en vain.
Merci d'avance pour votre aide
![]()
Bonjour,
Il est normal que la valeur se trouvant dans la variable Mois comme Jour d'ailleurs ne réponde pas à vos attentes.
Au lieu de déclarer ces variables comme Integer, il faut les déclarer comme String
Pour rappel, la fonction Format renvoie une chaîne de caractères
Si on déclare une variable comme un type numérique et qu'on lui passe comme valeur une chaîne de caractères correspondant à un nombre, la conversion sera automatique
Exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub t() Dim Mois As Integer Mois = "01" MsgBox Mois End Sub
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer suret si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
d donne 91 pour aujourd'hui (9 janvier)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 jour = Day(Now) mois = Month(Now) If jour <= 9 And mois <= 9 Then d = jour & mois End If
Bonjour,
C'est tout à fait logique, voir mon explication plus hautd donne 91 pour aujourd'hui (9 janvier)
Les fonctions Day et Month font une extraction d'une date et donc toute valeur numérique inférieure à 10 ne renvoie qu'un seul caractère et donc pour obtenir deux caractères il faut utiliser Format
Exemple pour obtenir deux caractères pour les valeurs numériques inférieures à 10
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Sub t() Dim Mois As String Dim Jour As String Mois = Format(Now(), "mm") Jour = Format(Now(), "dd") MsgBox Mois & Jour End Sub
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer suret si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonjour,
Maintenant si l'on souhaite par exemple renvoyer une date inversée pour par exemple sauver un fichier avec la date inversée comme préfixe, on n'est pas obligé de passer par des variables comme Jour et Mois
Exemple pour obtenir une chaîne de caractères ayant la date inversée suivi de du texte "-Ventes mensuelles" suivi du suffixe de l'extension
et personnellement, j'utiliserais Date au lieu de Now
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub t() Dim FileName As String FileName = Format(Now(), "yymmdd") & "-Ventes mensuelles.xlsm" MsgBox FileName End Sub
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer suret si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Partager