Hirdetés

Új hozzászólás Aktív témák

  • Mutt

    senior tag

    válasz Edorn #40973 üzenetére

    Szia,

    Erre pedig hadd javasoljam a Power Query-t, Excel 2010-től felfelé (2010-hez külön kell telepíteni, utána az Adatok/Data csoport alatt érhető el).

    Lépések (angol nyelvű Excelben):
    1. Az adatosort alakítsd táblázattá.
    2. Adatokat töltsd be Power Query-be. Data -> From Table opció.
    3. Vegyük le a duplikációkat. Home -> Remove rows -> Remove duplicates.

    4. Home -> Close&Load -> Close & load to opcióval térjünk vissza Excelbe és válasszuk az Only connection opciót.

    Most kell csinálnunk egy másik lekérdezést, amivel előállítjuk a teljes listát, ami minden sorszámot tartalmaz.
    5. Egy üres lekérdezéssel indítunk. Data -> Get Data -> From other sources -> Blank query.
    6. Fent a szerkesztő lécbe az alábbi képletet kellene beírnod:
    = List.Numbers(Table1[Adatsor]{0}, List.Last(Table1[Adatsor])-Table1[Adatsor]{0}+1)

    Ahol Table1 a korábbi lekérdezés neve, bal oldalat látható hogy mik lettek eddig létrehozva. Adatsor pedig a mező neve ahol a sorszámok vannak.

    7. Ezt a listát táblázattá kell alakítani. Transform ->To Table opcióval.
    8. Jöhet az összehasonlítás a csonka listával. Home -> Merge queries.
    Ott ki kell választanod a másik táblát, amire hivatkoztunk a 6-os lépésben, továbbá ki kell jelölnöd hogy a két listában mely oszlopokat hasonlítsa össze (itt most csak 1-1 oszlopunk van, de jelöld ki őket). Majd a join type-ot Left Anti-ra állítani, mert ez fog helyes eredményt a mostani kérdésre adni.

    9. Meg is van az eredmény. Töröljük a felesleges oszlopot jobb klikk Remove-al.
    10. Már csak vissza kell tölteni Excelbe a Close & Load -> Close & Load to -t választva és az ablakban a Table opciót meghagyva.

    Az előnye, hogy ha egy újabb számokat adsz hozzá az adatsorhoz és Data -> Refresh all-ra kattintasz, akkor azonnal lefrissíti neked az eredményt.

    üdv

Új hozzászólás Aktív témák