-
Fototrend
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
csabbymtc
#51516
üzenetére
Szia,
Én másra gondoltam a kérdéseddel kapcsolatban mint a többiek.
Az én megoldásom pedig MS365-ben így néz ki.A LET függvénnyel megússzuk a segédoszlopokat. A függvénnyel egy változóhoz értékeket lehet rendelni, majd a végén ezen változókkal műveletet csinálni. pl. =LET(a;1;a*2) az "a" nevű változónak 1-es értéket ad, majd eredményként a változó dupláját adja vissza.
Ezekután a teljes képlet:
=LET(betu;ÖSSZESÍT(15;6;SZÖVEG.KERES({1\2\3\4\5\6\7\8\9};A1);1)-1;
oszlop;BAL(A1;betu);
elvalaszto;SZÖVEG.KERES("-";A1);
start;KÖZÉP(A1;betu+1;elvalaszto-betu-1);
stop;KÖZÉP(A1;elvalaszto+1;255);
SZÖVEGÖSSZEFŰZÉS(",";IGAZ;oszlop&SORSZÁMLISTA(stop-start+1;;start)))A képletben kikeressük az oszlopazonosítót, ami betü(k)ből áll (példádban az X). Majd kikeressük a kötőjel előtti és utáni számokat (start és stop). A sorszámlista előállítja a két szám közötti számokat, amik elétesszük az oszlopazonosítót és az egészet összefűzzük.
Ha pedig nem a cellahivatkozásokat, hanem a cellák tartalmát akarod egy cellában látni, akkor a képlet ez (a mintámon az A4-B4 cellákon látod ezt):
=LET(betu;ÖSSZESÍT(15;6;SZÖVEG.KERES({1\2\3\4\5\6\7\8\9};A4);1)-1;
oszlop;BAL(A4;betu);
elvalaszto;SZÖVEG.KERES("-";A4);
start;KÖZÉP(A4;betu+1;elvalaszto-betu-1);
stop;KÖZÉP(A4;elvalaszto+1;255);
SZÖVEGÖSSZEFŰZÉS(",";HAMIS;INDEX(INDIREKT(oszlop&":"&oszlop;IGAZ);SORSZÁMLISTA(stop-start+1;;start))))Másik megoldás a Power Query használata, ami Excel 2013-tól van.
Az M-code ehhez:let
Forrás = Excel.CurrentWorkbook(){[Name="Táblázat1"]}[Content],
#"Típus módosítva" = Table.TransformColumnTypes(Forrás,{{"Lista", type text}}),
#"Oszlop megkettőzve" = Table.DuplicateColumn(#"Típus módosítva", "Lista", "Lista - másolat"),
#"Oszlop felosztása karakterátalakítás alapján" = Table.SplitColumn(#"Oszlop megkettőzve", "Lista - másolat", Splitter.SplitTextByCharacterTransition((c) => not List.Contains({"0".."9"}, c), {"0".."9"}), {"Lista.1", "Lista.2", "Lista.3"}),
#"Érték felülírva" = Table.ReplaceValue(#"Oszlop felosztása karakterátalakítás alapján","-","",Replacer.ReplaceText,{"Lista.1", "Lista.2", "Lista.3"}),
#"Egyéni oszlop hozzáadva" = Table.AddColumn(#"Érték felülírva", "Egyéni", each {Number.From([Lista.2])..Number.From([Lista.3])}),
#"Kibontott Egyéni" = Table.ExpandListColumn(#"Egyéni oszlop hozzáadva", "Egyéni"),
#"Egyesített oszlop beszúrva" = Table.AddColumn(#"Kibontott Egyéni", "Egyesítve", each Text.Combine({[Lista.1], Text.From([Egyéni], "hu-HU")}, ""), type text),
#"Sorok csoportosítva" = Table.Group(#"Egyesített oszlop beszúrva", {"Lista"}, {{"Elemszám", each _, type table [Lista.1=nullable text, Lista.2=nullable text, Lista.3=nullable text, Egyéni=number, Egyesítve=text]}}),
#"Egyéni oszlop hozzáadva1" = Table.AddColumn(#"Sorok csoportosítva", "Egyéni", each [Elemszám][Egyesítve]),
#"Kinyert értékek" = Table.TransformColumns(#"Egyéni oszlop hozzáadva1", {"Egyéni", each Text.Combine(List.Transform(_, Text.From), ","), type text}),
#"Oszlopok eltávolítva" = Table.RemoveColumns(#"Kinyert értékek",{"Elemszám"})
in
#"Oszlopok eltávolítva"üdv
Új hozzászólás Aktív témák
- Okos Otthon / Smart Home
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Milyen videókártyát?
- GoodSpeed: Te hány éves vagy?
- A fociról könnyedén, egy baráti társaságban
- Polgári repülőgép-szimulátorok
- Képregény topik
- Mibe tegyem a megtakarításaimat?
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Projektor topic
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i5 14400F 32/64GB RAM RX 9060 XT 8GB GAMER PC termékbeszámítással
- Apple iPhone 17 Pro Max 512GB / 36 hónap jótállással!
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
- Lenovo L13 Core I3-10110U / 4GB DDR4 / LAPTOP 2
- Készpénzes / Utalásos Számítógép felvásárlás! Személyesen vagy Postával!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest

Fferi50
