Vba excel 2010 : convertir jour en date [Résolu/Fermé]

Signaler
-
 yaka -
Bonjour,

j'ai vu dans un ancien poste sur les fonction date suivantes
datepart("w",ta_date) renvoie 1 pour dimanche, 2 pour lundi...

format(ta_date,"dddd") renvoie dimanche, lundi...

existe-t-il une fonction inverse qui transforme le jour en date ?
jour => date
ex nous sommes le lundi 4 janvier 2016

TUE => 29/12/2015
WED => 30/12/2015
THU => 31/12/2015
FRI => 01/01/2016
SAT => 02/01/2016
SUN => 03/01/2016

Merci pour votre aide

1 réponse

Messages postés
15357
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
1 octobre 2020
1 368
S'il n'y a que le nom du jour(ou abrégé) va pas être possible !!!!!
Messages postés
15357
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
1 octobre 2020
1 368 >
Messages postés
17
Date d'inscription
jeudi 3 septembre 2009
Statut
Membre
Dernière intervention
9 janvier 2016

Bonjour,

J'ai téléchargé le fichier mais je ne vois pas code. Surprenant !!!!!!!!

deziper, allez dans le repertoire YAKA, double clic sur le fichier, la macro peut etre lancee par les touches ctrl+m. Pour ouvrir la fenetre VBA, touches alt+F11
Messages postés
17
Date d'inscription
jeudi 3 septembre 2009
Statut
Membre
Dernière intervention
9 janvier 2016
1 >
Messages postés
15357
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
1 octobre 2020

Bonjour,

une erreur de ma part , je pense que j'etais sur le fichier d'origine.
Je viens de tester ça fonctionne très bien.
Merci beaucoup.
Je vais l'adapter à mon code et je mettrai ensuite résolu
Merci encore ! Bonne journée
Messages postés
17
Date d'inscription
jeudi 3 septembre 2009
Statut
Membre
Dernière intervention
9 janvier 2016
1 >
Messages postés
15357
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
1 octobre 2020

Bonjour,

ça marche très bien. J'ai mis à résolu.
Si possible . pouvez-vous Svp détailler un peu plus la fonction
Nous avons un tableau avec les jours de la semaine avec jes jours US abrégés,
on parcours ce tableau mais je ne comprends pas bien la logique.

il y a aussi la partie mise en mémoire de la plage que je ne comprends pas bien.
Merci
Messages postés
15357
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
1 octobre 2020
1 368 >
Messages postés
17
Date d'inscription
jeudi 3 septembre 2009
Statut
Membre
Dernière intervention
9 janvier 2016

Bonjour,

partie mise en mémoire de la plage Augmente la vitesse de traitement du fait de travailler en memoire(RAM) et non sur des cellules excel

on parcours ce tableau mais je ne comprends pas bien la logique.
Objectif:
trouver le numero du Jour abrege US dans la semaine ---> Num_JUS
ensuite:
Jour est le numero du jour de la date en cours et Aujourdhui la date en cours
Donc:
                    'calcul offset
                    If Jour > Num_JUS Then        '
                        Of7 = Jour - Num_JUS
                    Else
                        Of7 = Jour + (7 - Num_JUS)
                    End If
                    'quand ok changer ColPrv par Col
                    .Range(ColPrv & L + 1) = Aujourdhui - Of7       'ecriture resultat


Si vous regardez dans la feuille "Test_Formule" du fichier que j'ai mis a dispo, vous comprendrez plus facilement le calcul de Of7 avec la positon des jours dans la semaine
j ai reussi à adapter le code, merci pour les explications c'est plus clair.