Microsoft 365 Convertir du texte en Date

  • Initiateur de la discussion Initiateur de la discussion famu
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

famu

XLDnaute Occasionnel
Bonjour à tous,
Je bute sur un code en VBA qui pourrait convertir du texte en date.
J'ai joint un fichier pour être plus clair...
Merci d'avance pour votre aide,
Famu
 

Pièces jointes

Une proposition de macro :
VB:
Sub test()
    Set CelDepart = Sheets("Feuil1").Range("A4")
    MaSemaine = 1 * Mid(CelDepart.Value, 5, 2)
    MonAnnee = 1 * Right(CelDepart.Value, 4)
    MonLundi = DateSerial(MonAnnee, 1, 4) - Weekday(DateSerial(MonAnnee, 1, 4), 3) + 7 * (MaSemaine - 1)
    For i = 0 To 6
        CelDepart.Offset(i, 2).Value = MonLundi + i
    Next i
End Sub
 
bonsoir juste en passant
on peu le faire en formule directement
=DATE(CNUM(DROITE(A4;4));1;1)+(CNUM(STXT(A4;5;2)*7)-(JOURSEM(DATE(CNUM(DROITE(A4;4));1;1);2)-(LIGNE()-3)))
étendre vers le bas
demo.gif
 
Une proposition de macro :
VB:
Sub test()
    Set CelDepart = Sheets("Feuil1").Range("A4")
    MaSemaine = 1 * Mid(CelDepart.Value, 5, 2)
    MonAnnee = 1 * Right(CelDepart.Value, 4)
    MonLundi = DateSerial(MonAnnee, 1, 4) - Weekday(DateSerial(MonAnnee, 1, 4), 3) + 7 * (MaSemaine - 1)
    For i = 0 To 6
        CelDepart.Offset(i, 2).Value = MonLundi + i
    Next i
End Sub
Hello ami @TooFatBoy, @famu
N'y aurait-il pas un petit schmill dans la macro ?
Chez moi, j'ai des résultats bizarres si je mets par exemple en A4 : Sem.4-2023 😉
Qu'est-ce que ça donne chez vous ?
Amicalement,
 
N'y aurait-il pas un petit schmill dans la macro ?
Chez moi, j'ai des résultats bizarres si je mets par exemple en A4 : Sem.4-2023 😉
Qu'est-ce que ça donne chez vous ?
Oui, c'est "normal" : j'ai considéré que le numéro de la semaine était toujours sur deux caractères. 😉

Si tu mets 04, je n'ai pas testé, mais je pense que ça devrait fonctionner.
 
Dernière édition:
Mais ce serait mieux de prévoir le cas direct dans la macro, non ?
Enfin, c'est à famu de voir ça, après tout, c'est pour lui 😉
Oui, ce serait mieux. Mais comme tu dis très justement, c'est à famu de voir s'il faut modifier ou non.

J'ai fait au plus simple, en me disant que s'il y avait un problème pour les mois inférieurs à 10, alors je modifierais.
Mais franchement, c'est juste une ligne de plus, donc faut peut l'ajouter lui-même. Sinon tu peux lui faire. 😉

Mais franchement, pourquoi "compliquer" le truc si ça fonctionne bien chez lui ? 😉
 
Dernière édition:
re
Bonjour même si je suis passé inaperçu visiblement
avec formule 1 chiffre ou 2 pour la semaine
le texte des jours en "B" aussi en formule
Regarde la pièce jointe 1157874
bonne journée a tous
Bjr le fil
Patricktoulon : je me permets une incursion, si l'on choisit l'année 2023 en A11 et Lundi en B11, cela donne 30/01/2023, or le Lundi de la 4ème semaine de 2023 est le 23/01/2023

Qu'en pensez-vous ?

Cordialement, Gérard
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
281
  • Question Question
Microsoft 365 Formule
Réponses
4
Affichages
124
Réponses
14
Affichages
478
  • Question Question
Microsoft 365 format date
Réponses
3
Affichages
105
Réponses
3
Affichages
648
  • Question Question
Power Query Power Query
Réponses
26
Affichages
573
Réponses
7
Affichages
180
Réponses
0
Affichages
128
Retour