Convertir une date en chaîne de caractère

Résolu/Fermé
lilou - 7 août 2015 à 11:05
liloutte5 Messages postés 7 Date d'inscription vendredi 7 août 2015 Statut Membre Dernière intervention 7 août 2015 - 7 août 2015 à 16:22
Bonjour,

Je voudrai produire sur VBA une macro qui permet de comparer deux dates, le problème est que d'un côté j'ai une date sous forme de chaîne de caractère qui ne peut pas être transformée en format date lorsque je change le format de nombre sur Excel (la date reste telle qu'elle : "Mercredi 2 Janvier 2013", quoi que je sélectionne comme format), et de l'autre une date en format 02/01/2013. Je voudrais donc changer "02/01/2013" en une chaîne de caractère afin de la comparer avec la première.

Est-ce que quelqu'un a une idée svp ? Merci =)

2 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
7 août 2015 à 11:15
Bonjour,

Peut être en passant par Format :
Sub test()
Dim maDate As Date, strDate As String
maDate = CDate("02/01/2013") 'Ici on a bien une date au format date
MsgBox maDate
strDate = Format(maDate, "dddd dd mmmm yyyy") 'Ici on obtient un String
MsgBox strDate
End Sub

0
Merci, ca marche ! La date est bien transformée en chaîne de caractère, mais je dois avoir un autre problème car quand je compare les deux chaînes de caractères, la fonction StrComp par exemple qui compare les deux chaînes me renvoie qu'elle ne sont pas identiques ... je voulais donc essayer en supprimant la casse, en enlevant les espaces, etc. tout ce qui pourrait faire en sorte que les deux chaînes sont différentes ... au niveau de la mise en forme aussi. Mais je ne trouve pas de fonction qui permettrait de mettre les deux cases au même format ...
0
J'ai essayé avec lcase() pour tout mettre en minuscule, mais ca ne marche pas quand même, il me faudrait un outil qui permet de tout mettre au même format ...
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 331
7 août 2015 à 12:37
Peux-tu montrer le contenu de ces 2 chaines ?
0
liloutte5 Messages postés 7 Date d'inscription vendredi 7 août 2015 Statut Membre Dernière intervention 7 août 2015
7 août 2015 à 13:48
La première image est la feuille 1 de mon tableur Excel, avec les dates sur l'année (sans dimanches et jours feriés) et la feuille 2 reprend tous les jours confondus. Je veux donc tester si chaque ligne de la feuille 1 correspond aux lignes de la feuille 2, et si c'est le cas, réaliser une certaine condition, si ca n'est pas le cas, en réaliser une autre. Mais la transformation des dates de la feuille 2 avec la fonction Format (changer la forme 02/01/2013 en mercredi 2 janvier 2013) ne me permet pas de la comparer avec les cases de la feuille 1 qui sont elles déjà en chaîne de caractère mercredi 2 janvier 2013
0