Accueil – Le CFO masqué › Forums › Power Query › Impossible de convertir DateTime.LocalNow
Mots-clés : DateTime.LocalNow Conversion
- Ce sujet contient 2 réponses, 2 participants et a été mis à jour pour la dernière fois par e.chevron, le il y a 3 années et 1 mois.
-
AuteurArticles
-
15 août 2021 à 10 h 11 min #94152e.chevronParticipant
Bonjour.
Comme indiqué dans le sujet, je n’arrive pas à convertir DateTime.LocalNow (ni DateTime.FixedLocalNow)
Soit une fonction simpliste :
let Aujourdhui = let Today = Date.From(DateTime.LocalNow) in Today in Aujourdhui
J’obtiens :
DataFormat.Error : Désolé… Nous ne pouvons pas procéder à la conversion en Date.Avec Today = Text.From(DateTime.LocalNow)
j’obtiens Expression.Error : Désolé… Nous n’avons pas pu convertir une valeur de type Function en type Text.Avec Today = DateTime.Date(DateTime.LocalNow)
j’obtiens Expression.Error : La fonction DateTime.Date attend une entre de type DateTime ou DateTimeZone.Ca aurait été tellement simple d’avoir un Date.LocalNow (n’osons pas envisager un Date.Today, ce serait trop gourmand), mais non, il faut convertir… Mais apparemment c’est plus compliqué que ce que je pensais…
Merci d’avance pour vos lumières, car ça fait des heures que je cherche juste comment créer une variable contenant la date du jour.
Je passais ici par une fonction car la variable dans le code global provoquait les mêmes erreurs et que j’ai donc voulu l’isoler.Dans l’attente impatiente de vos réponses, je vous souhaite une excellente journée.
15 août 2021 à 23 h 09 min #94156DanielParticipantBonjour,
Essayez la formule M suivante :
Date.From(DateTime.LocalNow())
Voir un exemple en pièce jointe.let #"Insertion de la date du jour"=Date.From(DateTime.LocalNow()), Source = Excel.CurrentWorkbook(){[Name="tabData"]}[Content], #"Type modifié" = Table.TransformColumnTypes(Source,{{"Date", type date}}), #"Lignes filtrées" = Table.SelectRows(#"Type modifié", each [Date] = #"Insertion de la date du jour") in #"Lignes filtrées"
Cordialement
- Cette réponse a été modifiée le il y a 3 années et 1 mois par Daniel. Raison: Ajout code de la requête exemple
Attachments:
You must be logged in to view attached files.16 août 2021 à 9 h 08 min #94165e.chevronParticipantPunaise !!!!!!
La double parenthèse !!!!Bonjour Daniel, et merci pour cette correction.
Pour celles et ceux qui rencontreraient le même problème et qui n’auraient pas compris la correction :
DateTime.LocalNow représente la fonction en tant que telle
DateTime.LocalNow() représente le résultat de ladite fonctionDateTime.Date(DateTime.LocalNow) ne fonctionne pas car DateTime.Date ne sait pas traiter la fonction, il ne peut traiter que le résultat de la fonction, donc :
DateTime.Date(DateTime.LocalNow())Il en sera évidemment de même pour toute autre fonction : lorsqu’on veut traiter le résultat d’une fonction, il faut obligatoirement l’affubler de ses parenthèses, qu’il y ait ou non quelque-chose à l’intérieur.
Encore merci Daniel pour m’avoir mis sur la piste.
-
AuteurArticles
- Vous devez être connecté pour répondre à ce sujet.