Power Query Power Query, remplacer une valeur par la valeur d'une cellule

palto

XLDnaute Nouveau
Bonjour à tous

@Hasco m'avait donné une excellente solution pour pouvoir ouvrir un fichier dont le nom pouvait changer en fonction de la date du jour mais je n'avais pas pensé aux jours fériés, week end etc.

D'ou ma question, comment remplacer la valeur -1, qui ôte un jour à la date du jour, par la valeur d'une cellule ou je calculerai le nombre de jours à ôter de la date du jour pour retrouver mes fichiers ?

en gros dans A1 de la feuille 1 je calcule le nombre de jours qui me séparent du jour ouvré précédent :


Code:
let
Source = Excel.Workbook(File.Contents("Z:\CheminVersLeDossier\fichier " & Date.ToText(Date.AddDays(DateTime.Date(DateTime.LocalNow()),-1),[Format="yyyyMMdd",Culture="fr-FR"]) & ".xlsx"), null, true),
Feuil1_Sheet = Source{[Item="Feuil1",Kind="Sheet"]}[Data],
#"Conserver les premières lignes" = Table.FirstN(Feuil1_Sheet,8),
#"Conserver les premières colonnes" = Table.SelectColumns(#"Conserver les premières lignes",{"Column1", "Column2", "Column3", "Column4", "Column5", "Column6"}),
#"En-têtes promus" = Table.PromoteHeaders(#"Conserver les premières colonnes", [PromoteAllScalars=true]),
#"Type modifié" = Table.TransformColumnTypes(#"En-têtes promus",{{"Colonne 1", Int64.Type}, {"Colonne 2", Int64.Type}, {"Colonne 3", Int64.Type}, {"Colonne 4", Int64.Type}, {"Colonne 5", Int64.Type}, {"Colonne 6", Int64.Type}})
in
#"Type modifié"


par avance merci bcp pour votre aide
 
Dernière édition:

Hasco

XLDnaute Barbatruc
Re,

On peut le faire sous power-query.
Mais c'est aussi bien de le faire dans une feuille.
Ne serait-il pas alors judicieux de calculer carrément la date ouvrée précédente plutôt que le nombre de jour qui nous séparent d'elle. si vous ne savez pas le faire, on vous aidera pour ça.

Vous pouvez même en reconstituer le nom du fichier que la requête interrogera.

Tant qu'à aller chercher un paramètre sur une feuille excel, autant que ce dernier soit complet.

Un point important : Nommer la cellule qui contiendra l'information à aller chercher.

A partir de là je vous guiderai pour que vous puissiez le faire vous-même.

Cordialement
 

Hasco

XLDnaute Barbatruc
Re,

Pour le jour ouvré précédent aujourd'hui :
=SERIE.JOUR.OUVRE(AUJOURDHUI();-1;Feriés)
Ou si vous avez des jours de fermeture autre que samedi et dimanche et la bonne version excel:
=SERIE.JOUR.OUVRE.INTL(AUJOURDHUI();-1;2;Feriés)
Où 'Feriés' dans les deux est le nom de la liste des jours feriés.
et 2 est pour les fermetures de dimanche et lundi
Cordialement
 

palto

XLDnaute Nouveau
Merci @Hasco j'ai essayé de faire tout ce que vous avez dit, ça m'a l'air d'être plus judicieux

du coup j'arrive à avoir le lien vers le fichier dans une cellule nommée

comment faire pour l'intégrer à votre code ?

merci par avance
 

Pièces jointes

  • essai dates.xlsx
    10.8 KB · Affichages: 2
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
300 907
Messages
1 988 377
Membres
210 125
dernier inscrit
manager2015