• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

filter in power query

Status
Niet open voor verdere reacties.

moensk

Gebruiker
Lid geworden
23 jun 2013
Berichten
778
ik wil in power query een dubbele filter
AANMAAKDATUM = vandaag en vandaag-1
LOSDATUM = vandaag+1

probleem is het moeten werkdagen zijn, weekends mogen niet meegeteld worden
die mogelijkheid vind ik niet bij filters

klein voorbeeldje in bijlage
 

Bijlagen

En je vorige vraag even afronden eerst?
 
JEC - vorige vraag afgewerkt nu
ik wou dit in powerquery want heb deze kolommen nadien niet meer nodig en dus kan verwijderen na de actie,
ik heb al 12 kolommen welke ik zichtbaar moet hebben en wil schuifbalk vermijden
 
Zo dan?

Code:
let
    Source = Excel.CurrentWorkbook(){[Name="Test"]}[Content],
    cType = Table.TransformColumnTypes(Source,{{"OPDRACHT", Int64.Type}, {"WHSNR", Int64.Type}, {"AANMAAKDATUM", type date}, {"LOSDATUM", type date}, {"PP", Int64.Type}, {"WAGEN", Int64.Type}}),
    today = Date.From(DateTime.LocalNow()),
    f1 =  List.Select(List.Dates(today,4,#duration(-1,0,0,0)), (x)=> Date.DayOfWeek(x,1) < 5){1},
    f2 =  List.Select(List.Dates(today,4,#duration(1,0,0,0)), (x)=> Date.DayOfWeek(x,1) < 5){1},
    out = Table.SelectRows(cType, each ([AANMAAKDATUM] = f1 or [AANMAAKDATUM] = today) or ([LOSDATUM] = f2))
in
    out
 
Laatst bewerkt:
Iets netter

Code:
let
    Source = Excel.CurrentWorkbook(){[Name="Test"]}[Content],
    cType = Table.TransformColumnTypes(Source,{{"OPDRACHT", Int64.Type}, {"WHSNR", Int64.Type}, {"AANMAAKDATUM", type date}, {"LOSDATUM", type date}, {"PP", Int64.Type}, {"WAGEN", Int64.Type}}),
    today = Date.From(DateTime.LocalNow()),
    xDates =  List.Select(List.Dates(today - #duration(4,0,0,0),8,#duration(1,0,0,0)), (x)=> Date.DayOfWeek(x,1) < 5),
    pos = List.PositionOf(xDates,today),
    out = Table.SelectRows(cType, each ([AANMAAKDATUM] = xDates{pos-1} or [AANMAAKDATUM] = today) or ([LOSDATUM] = xDates{pos+1}))
in
    out
 
ik krijg volgende foutmelding bij script.
heeft dit te maken met weekend ?
script
Code:
#"Dubbele waarden verwijderd" = Table.Distinct(#"Namen van kolommen gewijzigd1", {"REFERENTIE"}),
    #"cType" = Table.TransformColumnTypes(#"Dubbele waarden verwijderd",{{"OPDRACHT", Int64.Type},{"AANMAAK", type date}, {"DEFINITIEF", type date}, {"LOSDATUM", type date}, {"LOSPOSTCODE", Int64.Type},  {"WHS_NR", Int64.Type},  {"PP", Int64.Type}}),
    #"today" = Date.From(DateTime.LocalNow()),
    #"xDates" =  List.Select(List.Dates(today - #duration(4,0,0,0),8,#duration(1,0,0,0)), (x)=> Date.DayOfWeek(x,1) < 5),
    #"pos" = List.PositionOf(xDates,today),
    #"out" = Table.SelectRows(cType, each ([AANMAAK] = xDates{pos-1} or [AANMAAK] = today) or ([LOSDATUM] = xDates{pos+1}))
in
    out

screenshots met resultaten hierbij
tijd.png
 
In een ander draadje van kort geleden heb ik je een aangepaste versie gegeven om de eerst volgende werkdag te vinden
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan