• 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.

script VBA of power query

Status
Niet open voor verdere reacties.

moensk

Gebruiker
Lid geworden
23 jun 2013
Berichten
771
Via powerquery haal ik gegevens uit de boordcomputers van de chauffeurs.
hierbij wil ik gaan groeperen op 1 kolom (key) waarbij hij regelnr "1" houdt en ook de aankomst en vertrektijd
Doch alle "pp" moet hij optellen met dezelfde key.
Ik dacht dit te doen met een draaitabel doch de aankomst en vetrektijd is niet altijd identiek zelfde
Kan dit in Power query gerealiseerd worden ?
of kan dit enkel met een VB script ?

in bijlage klein opzetje
 

Bijlagen

ik snap eigenlijk niet wat je wil met die regelnr.
maar zou dit iets kunnen zijn?
 

Bijlagen

Bvb

PHP:
let
    Source = Excel.CurrentWorkbook(){[Name="Boordcomputer"]}[Content],
    grp = Table.Group(Source, {"Key"}, {{"pp", each List.Sum([pp])}, {"reglnr", each 1}, {"aankomst", each [aankomst]{0}}, {"vertrek", each [vertrek]{0}}})
in
    grp
 
Of met 1 dynamische formule in office 365

Code:
=LET(r;Boordcomputer;c;INDEX(r;;1);u;UNIQUE(c);s;SUMIF(c;u;INDEX(r;;2));t;INDEX(r;MATCH(u;c;0);{4\5});HSTACK(u;s;t))
 
Hallo,

In power query krijg je zoiets.
 

Bijlagen

Het is alleen die Mcode plaatsen in de advanced editor
 

Bijlagen

JEC,
Mcode werkt goed doch ik heb er nog 12 kolommen voor staan en 4 erna.
deze moeten zichtbaar blijven, hoe doe ik dat het simpelst
 
Plaats anders even het relevante vb bestand
 
Vervang alles in de advanced editor door dit

PHP:
let
    Source = Excel.CurrentWorkbook(){[Name="Boordcomputer"]}[Content],
    grp = Table.Group(Source, {"Key"}, {{"pp_", each List.Sum([pp])}}),
    merge = Table.Join(grp,"Key",Source,"Key"),
    cols = List.RemoveItems(Table.ColumnNames(merge), {"pp","Key"}),
    grp2 = Table.Group(merge, {"Key"}, {{"Count", each Table.First(_)}}),
    exp = Table.ExpandRecordColumn(grp2, "Count", cols, cols)
in
    exp
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan