- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Argos: Szeretem az ecetfát
- gban: Ingyen kellene, de tegnapra
- Flashback: Építsünk PC-t akciós alkatrészekből, lassan. upd: 05.28
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- bambano: Bambanő háza tája
- Parci: Milyen mosógépet vegyek?
- Luck Dragon: Asszociációs játék. :)
- vrob: Az IBM PC és a játékok a 80-as években
-
LOGOUT
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Mutt
senior tag
válasz
ny.janos #53684 üzenetére
Szia,
Megnéztem a fájlt és zavaró, hogy a sorrend változik egyszerű műveletek után, de ez nem hiba, hanem a rendszer műkődésének "terméke". Már 2018-ban is panaszkodtak erre ahogy most keresgéltem és azóta nincs változás. Ahogy korábban beszéltünk róla, ha fontos a sorrend, akkor az utolsó lépés(ek)ben kell elintézni.
Az okosok szerint ez azért történhet meg, mert az optimalizáció jegyében a Power Query nem mindig abban a sorrendben hajtja végre az átalakításokat mint ahogy a lépések/a felhasználói logika adja.
A legtöbben a Table.Buffer-t (ami a memóriába teszi az adott lépés eredményét, ezzel felgyorsítva az elérését az adatoknak később) javasolják. A puffereléshez elő kell állítani a kész eredményt, nem fog tudni menetközben kavarni.
A mintádban az utolsó kibontás előtti lépés került memóriába és tényleg utána nem változik a sorrend. Ha hamarabb teszem RAMba az adatokat, akkor már megint van kavarás.
Még egy dolgot módosítottam, hogy te is szokd/gyakorold a tábla kibontást másik módon. A 13. lépésed a "Mérkőzés indexszámmal" táblák kibontása/egyesítése. Ezt a GUI-ról könnyen el lehet végezni, de 2 problémája van:
- fixen rögzíti az oszlop neveket amikkel dolgozni fog és
- elveszíted az oszlopok adattítpusát
Láthatod hogy egyik korábbi oszlopnak sincsen típusa.Helyette lehet használni a Table.Combine-t.
A teljes M-kód:let
Forrás = Excel.CurrentWorkbook(){[Name="Eredmenyek"]}[Content],
#"Típus módosítva" = Table.TransformColumnTypes(Forrás,{{"Forduló száma", Int64.Type}, {"Versenyző sorszám", Int64.Type}, {"Mérkőzés száma", Int64.Type}, {"Hazai/vendég", type text}, {"Versenyző", type text}, {"Csapat", type text}, {"Teli 1-25", Int64.Type}, {"Össz 1-50", Int64.Type}, {"Teli 51-75", Int64.Type}, {"Össz 51-100", Int64.Type}}),
#"Sorok szűrve" = Table.SelectRows(#"Típus módosítva", each ([#"Össz 51-100"] <> null)),
#"Érték felülírva" = Table.ReplaceValue(#"Sorok szűrve",null,0,Replacer.ReplaceValue,{"Teli 1-25", "Össz 1-50", "Teli 51-75", "Össz 51-100"}),
#"Összeadás beszúrva" = Table.AddColumn(#"Érték felülírva", "Teli", each [#"Teli 1-25"] + [#"Teli 51-75"], Int64.Type),
#"Összeadás beszúrva1" = Table.AddColumn(#"Összeadás beszúrva", "Összesen", each [#"Össz 1-50"] + [#"Össz 51-100"], Int64.Type),
#"Kivonás eredménye beszúrva" = Table.AddColumn(#"Összeadás beszúrva1", "Tarolás", each [Összesen] - [Teli], Int64.Type),
#"Oszlopok eltávolítva" = Table.RemoveColumns(#"Kivonás eredménye beszúrva",{"Teli 1-25", "Össz 1-50", "Teli 51-75", "Össz 51-100", "Teli"}),
#"Sorok rendezve" = Table.Sort(#"Oszlopok eltávolítva",{{"Forduló száma", Order.Ascending}, {"Mérkőzés száma", Order.Ascending}, {"Összesen", Order.Descending}, {"Tarolás", Order.Descending}}),
#"Sorok csoportosítva" = Table.Group(#"Sorok rendezve", {"Forduló száma", "Mérkőzés száma"}, {{"Mérkőzés", each _, type table [Forduló száma=number, Versenyző sorszám=number, Mérkőzés száma=number, #"Hazai/vendég"=text, Versenyző=text, Csapat=text, #"Teli 1-25"=nullable number, #"Össz 1-50"=nullable number, #"Teli 51-75"=nullable number, #"Össz 51-100"=number, Csere=any]}}),
#"Egyéni oszlop hozzáadva" = Table.AddColumn(#"Sorok csoportosítva", "Mérkőzés indexszámmal", each Table.AddIndexColumn([Mérkőzés], "Index", 1, 1, Int64.Type)),
#"Többi oszlop eltávolítva" = Table.SelectColumns(#"Egyéni oszlop hozzáadva",{"Mérkőzés indexszámmal"}),
Combine = Table.Combine(#"Többi oszlop eltávolítva"[Mérkőzés indexszámmal]),
#"Feltételes oszlop hozzáadva" = Table.AddColumn(Combine, "Egyéni pont", each if [Index] <= 4 then 1 else 0),
#"Egyesített lekérdezések" = Table.NestedJoin(#"Feltételes oszlop hozzáadva", {"Versenyző sorszám", "Forduló száma", "Mérkőzés száma"}, Manualis_info, {"Versenyző sorszám", "Forduló száma", "Mérkőzés száma"}, "Manualis_info", JoinKind.LeftOuter),
Buffer = Table.Buffer(#"Egyesített lekérdezések"),
#"Kibontott Manualis_info" = Table.ExpandTableColumn(Buffer, "Manualis_info", {"Manuális információ"}, {"Manuális információ"})
in
#"Kibontott Manualis_info"
üdv
Új hozzászólás Aktív témák
Hirdetés
- BESZÁMÍTÁS! Asus H110M-K i7 6700 16GB DDR4 480GB SSD GTX 1660Ti 6GB Rampage SHIVA FSP 550W
- Wilbur Smith könyvek (15 db) egyben
- ÁRGARANCIA!Épített KomPhone i5 13400F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA! Épített KomPhone Intel i9 14900KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- LG 65C2 - 65" OLED evo - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest