Ik heb een bestand waar in kolom A een aantal vaartuignamen staan, en kolom B een aantal nummers.
De vaartuignamen staan er soms dubbel in.
wat ik nodig heb is:
Kolom A: Vaartuignaam
Kolom B-??: nummers
is het mogelijk om dit redelijk snel te doen met een macro of Powerquery?
Ik heb een voorbeeld bijgevoegd.
bedoel je zoiets?
Fantastisch, dank je wel, en ook zo snel!!!
Inene wegschrijven:
Voor Power Query is dit de M-CodeCode:Sub jec() Dim ar, i As Long ar = Sheets(1).Cells(1).CurrentRegion With CreateObject("scripting.dictionary") For i = 1 To UBound(ar) .Item(ar(i, 1)) = .Item(ar(i, 1)) & IIf(Len(.Item(ar(i, 1))), ", ", "") & ar(i, 2) Next Sheets(2).Cells(1).Resize(.Count, 2) = Application.Transpose(Array(.keys, .items)) End With End Sub
Code:let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content], Grp = Table.Group(Source, {"Vaartuig"}, {{"Count", each _, type table [Vaartuig=nullable text, Nummer=nullable text]}}), cAdd = Table.AddColumn(Grp, "Custom", each [Count][Nummer]), vExt = Table.RemoveColumns(Table.TransformColumns(cAdd, {"Custom", each Text.Combine(List.Transform(_, Text.From), ", "), type text}),{"Count"}) in vExt
Laatst aangepast door JEC. : 13 mei 2022 om 16:09
Gr,
JV
Ook simpel voor insiders met:
En:Code:=UNIEK(Huidig!A2:A11)
Of:Code:=ARRAYTOTEXT(FILTER(Huidig!B$2:B$11;Huidig!A$2:A$11=B2))
Code:=ARRAYTOTEXT(SORTEREN(FILTER(Huidig!B$2:B$11;Huidig!A$2:A$11=D2);;-1))
____________
Met vriendelijke groet,
Harry
Lag nooit om de keuzes van dien vraauw, bist ter zulf aine van....
(Grunnegs-Gronings)
ARRAYTOTEXT is gebonden aan regionale instellingen. Bij jou geeft hij waarschijnlijk komma's maar hier puntkomma.
Is ook al te gebruiken voor niet-insiders.
Gr,
JV
Geeft hier ook puntkomma's, maar dat zal vast niet zo interessant zijn door welk scheidingsteken het wordt gescheiden.
Mooi om te weten dat het nu standaard is; geldt dat voor alle functies die eerst alleen voor insiders waren.
Mag ik vragen waar je die informatie weghaalt?
____________
Met vriendelijke groet,
Harry
Lag nooit om de keuzes van dien vraauw, bist ter zulf aine van....
(Grunnegs-Gronings)
Dat zijn alleen degene die als laatst uit zijn gekomen.
Omdat ik iedere aanpassing de afgelopen twee jaar heb gevolgd, weet ik uit mijn hoofd welke functies voor insiders zijn.
Op deze site staan ze nog mooi opgesomd
https://techcommunity.microsoft.com/...el/m-p/3269526
Gr,
JV
Dank je.
____________
Met vriendelijke groet,
Harry
Lag nooit om de keuzes van dien vraauw, bist ter zulf aine van....
(Grunnegs-Gronings)
Hier nog een leuke.
Als je de =UNIEK(Huidig!A2:A11) in E2 zet en vervolgens deze in F2:
Code:=BYROW(E2#;LAMBDA(r;TEKST.COMBINEREN(", ";;FILTER($B$2:$B$11;$A$2:$A$11=r))))
Gr,
JV
Nog mooier, het hele zootje in 1x
Code:=LET(x;UNIEK(A2:A11);KIEZEN({1\2};x;BYROW(x;LAMBDA(r;TEKST.COMBINEREN(", ";;FILTER($B$2:$B$11;$A$2:$A$11=r))))))
Gr,
JV
Heel mooi,
Het sorteert ook echt goed in de tweede kolom van groot naar klein.
Jammer dat bij veranderingen in het eerste blad de formules niet worden bijgewerkt in tegenstelling van de mijne (frappant).
____________
Met vriendelijke groet,
Harry
Lag nooit om de keuzes van dien vraauw, bist ter zulf aine van....
(Grunnegs-Gronings)
Bij mij lijkt dat niet het geval te zijn. Wat verander je precies?
Gr,
JV
Ik zie het al; je verwijst niet naar het ander blad waar ik de wijzigingen deed.
Dus dat sorteren van hoog naar laag wat ik dacht is ook niet waar (ik dacht dat het ook mooi gelijk sorteerde).
De evaluatie van de LAMBDA functie vind ik maar triest (slecht) wil je het voor een eerste keer doorgronden (ongeldig,ongeldig).
Als je de functie begrijpt is er niets aan de hand.
Hoe zit dat in jouw Excel?
____________
Met vriendelijke groet,
Harry
Lag nooit om de keuzes van dien vraauw, bist ter zulf aine van....
(Grunnegs-Gronings)
Klopt, evalueren werkt niet met LET en LAMBDA. De variabelen in de formule krijgen niet direct waarde toegekend. Kan inderdaad soms vervelend zijn…