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

Opgelost query hulp

Dit topic is als opgelost gemarkeerd

moensk

Gebruiker
Lid geworden
23 jun 2013
Berichten
815
in bijlage klein voorbeeld
als een waarde staat in kolom "controle" dan moeten alle cellen met dezelfde "RitID" de waarde "X" krijgen in een nieuwe Kolom
 

Bijlagen

Met deze formule moet dat lukken

Code:
=ALS(AANTALLEN.ALS([RitID];[@RitID];[controle];"<>")>0;"x";"")
 
Ik heb een poging gewaagd.
Ik heb zoveel als mogelijk gebruik gemaakt van de UI.
De query kan veel mooier en korter maar voor de leesbaarheid niet gedaan.
 

Bijlagen

roeljongman - bedankt voor formule doch ik moet er nadien in de query nog bewerkingen mee doen vandaar een gevraagde query oplossing

peter59 - heb hem juist bekeken en begrijp de opbouw nu ik hem lees, ni gedacht dat het zo complex zou zijn... maar wederom bedankt voor de hulp
 
De query iets ingekort.
In de geneste tabel wordt nu direct een kolom toegevoegd die aan de voorwaarde moet voldoen en vervolgens een X krijgt.
Code:
let
    Bron =
        Excel.CurrentWorkbook(){[Name = "Tabel1"]}[Content],

    GrpRitID =
        Table.Group(
            Bron,
            {"RitID"},
            {
                {
                    "Aantal",
                    (t as table) =>
                        Table.AddColumn(
                            t,
                            "Gecontroleerd",
                            each if List.AnyTrue(
                                    List.Transform(t[controle], each _ <> null and Text.Contains(_, "Contr"))
                                 )
                                 then "X"
                                 else null,
                            type text
                        ),
                    type table [
                        datum = datetime,
                        RitID = number,
                        PP = number,
                        controle = nullable text,
                        Gecontroleerd = nullable text
                    ]
                }
            }
        ),

    Uitv =
        Table.ExpandTableColumn(
            GrpRitID,
            "Aantal",
            {"datum", "RitID ", "PP", "controle", "Gecontroleerd"}
        ),

    Output =
        Table.SelectColumns(
            Uitv,
            {"datum", "RitID", "PP", "controle", "Gecontroleerd"}
        )
in
    Output
 
of:

PHP:
let
    Source = Excel.CurrentWorkbook(){[Name="Tabel1"]}[Content],
    sorted = Table.Buffer(Table.Sort(Source,{{"RitID", Order.Descending}, {"controle", Order.Descending}})),
    group = Table.Group(sorted, {"RitID"}, {{"grp", (t)=> Table.AddColumn(t, "Gecontroleerd", each if t[controle]{0} <> null then "x" else null)  }}),
    result = Table.Combine(group[grp])
in
    result
 
JEC - peter59
wat gaat hier fout ? in bijlage de excel met script doch hij zet alles op "x"
enkel "RITID" = 2107673 had een "x" moeten krijgen
klein voorbeeld in bijlage
 

Bijlagen

Zoek het verschil in deze stap van de query.
Code:
group = Table.Group(sorted, {"RITID"}, {{"grp", (t)=> Table.AddColumn(t, "Gecontroleerd", each if t[Controle BC Gebruik]{0} <> "" then "x" else "")  }}),
 
Terug
Bovenaan Onderaan