Hirdetés
-
PROHARDVER!
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:letForrá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
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Milyen TV-t vegyek?
- Star Trek Online -=MMORPG=-
- Kutya topik
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- Vezeték nélküli fejhallgatók
- Házimozi belépő szinten
- Milyen billentyűzetet vegyek?
- Egyre inkább szoftverrel segítene a Core CPU-k teljesítményén az Intel
- Vezetékes FEJhallgatók
- További aktív témák...
- 2000GB NVMe SSD, 1 év gar
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
- Lenovo X13 Gen 1 Ryzen 5 pro 4650U, 16GB RAM, SSD, jó akku, számla, garancia
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Azonnali készpénzes AMD Radeon RX 5000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50
