-
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
-
Misi_D
tag
válasz
Colin111
#49794
üzenetére
Az xkeres keresési tartománya/tömbje egy oszlopos/soros. Itt most csak félreértésnek tűnik a tömb fogalma, nem azt akarja jelölni, h több oszlopos/soros, ahol keresi az első paraméterben megadottat, hanem szerintem csak arra akar vonatkozni, ha van egy számsor/adatsor, ami pl. szűréssel, képletekkel stb. áll elő (tehát kifejezetten az adatokról szól, nem a cellákról).
HA függvényeket nem is kell, de hasonló módszerrel inkább xkeres-eket ágyaznék egymásba, annyit, ahány oszlopban kell keresni; használva a függvény if_not_found paraméterét (a függvény 4. paraméterét - ott, ahol te nem adtál meg semmit, a két pontosvessző közé), oda tenném mindig egyre beljebb őket. A C1-C2-C3 oszlopjaidra, majd így tovább (az egyeztetési mód és a keresési mód alapértelmezett, ezeket nem is kell megadni a pontos keresésre, ill. az elsőtől az utolsóig típusú keresésnél):
-
föccer
nagyúr
válasz
Colin111
#49799
üzenetére
Szia!
Ennek a feladatnak nagyon =INDEX(HOL.VAN()) szaga van
A hol.van függvény m,egadja, hogy egy vektorban hányadik elem a keresett érték, amit az indexbe megadva vissza lehet kerestetni egy tömbben lévő értéket. Ha duplán használod a hol.van függvény (sorra és oszlopra is), akkor nagyon pont egy két dimenziós paraméter táblát készítettél. -
-
Fferi50
Topikgazda
válasz
Colin111
#48583
üzenetére
Szia!
Pl. a munkalap eseménykezelését felhasználhatod erre:
A cellára duplakatt esetén hajtja végre az alábbi eseménykezelést:Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)If Target.Column > 5 Or Target.Row = 1 Then Cancel = True: Exit SubIf Target.Value = "" Then Cancel = True: Exit SubApplication.EnableEvents = Falsereszletezo Target.RowApplication.EnableEvents = TrueCancel = TrueEnd Sub
Az elején megvizsgálja, hogy az első 5 oszlopban van-e a kattintás és nem a fejlécen, illetve nem üres-e a cella.
Ezután kikapcsolja az eseménykezelőt és a meghívott makrónak átadja a kattintott cella sorát. Ha más módon lehet azonosítani a rekordot, akkor azt kell átadnia - kibogoznia valahonnan.
Miután végrehajtotta a meghívott makrót, visszakapcsolja az eseménykezelőt és letiltja a kattintás rendszer szerinti végrehajtását.
A meghívandó makró így nézzen ki:Sub reszletezo(ByVal sor As Integer)'....ide jönnek az utasítások - a sor nevű változóban lesz a kattintott cella soraEnd Sub
Ennek annyi a hátránya, hogy az adott területen nem tudod a duplakattintásokhoz kapcsolódó rendszerműveleteket végrehajtani.
Viszont cserébe az adott "rekord" bármelyik celláján duplán kattintva elindul a részletező makró és nem kell külön parancsgomb és "száz" makró.
Remélem sikerülni fog.
Üdv. -
-
Mutt
senior tag
válasz
Colin111
#37832
üzenetére
Szia,
Segédoszlop nélküli megoldás nem jön össze, de egy segédoszloppal igen.
Nálam a segédoszlop az M-ben van. M2 képlete:
=HA(A2<>"";HA(KIMETSZ(A2)=KIMETSZ(A1);0;1);"")Ha van a sor A-oszlopában név, akkor ha az előtte lévő sorban ugyanaz a név, akkor ismétlődés van és 0-t iratunk ki, különben 1-et. A KIMETSZ az esetleges felesleges szóközöket szűri, nem kötelező.
Ezt a képletet húzd le jó sok sorba, mondjuk 1000 sor.A Névkezelőben egy új dinamikus tartományt hoztam létre "seged" névvel Képlete:.
=ELTOLÁS(Munka1!$M$2;0;0;DARAB2(Munka1!nevsor))Ezek után a K3-ban a képlet erre változik:
=HA(K2>DARABTELI(seged;1);"Nincs több név";INDEX(nevsor;ÖSSZESÍT(15;6;SOR(INDIREKT("A1:A"&DARAB2(seged)))/seged;K2)))A segédoszlop lehet egy rejtett lapon, vagy elrejtheted az oszlopot, akár az oszlop betű szinét fehérre is állíthatod.
üdv
-
Fferi50
Topikgazda
válasz
Colin111
#37803
üzenetére
Szia!
Miért is nem jó a jó képlet? Ami minden egyes kattintásra a következő nevet veszi fel....
Vagy nem arra koncentrálunk, ami a feladat lenne?
Mert ezt a kérdést
"sajnos ennek sem lehet függvénnyel magadni az ugrás/lépés számot...."
nem értem, miért kellene külön lépésszámot megadni?Üdv.
-
Mutt
senior tag
válasz
Colin111
#37799
üzenetére
Szia,
Az általam küldött megoldás kiszűri az ismétlődéseket, 1 hiba van a megoldásomban, hogy K1 helyett neked K2-ben van a számlálód, így a helyes és összetett képlet amit K3-ba kell írnod:
=HA(K2>SZORZATÖSSZEG(1/DARABTELI(nevsor;nevsor));"Nincs több név";INDEX(nevsor;ÖSSZESÍT(15;6;HOL.VAN(nevsor;nevsor;0)/HA(GYAKORISÁG(HOL.VAN(nevsor;nevsor;0);SOR(INDIREKT("A1:A"&DARAB2(nevsor))))>0;1;0);K2)A képlethez kell egy dinamikus tartomány, Képletek -> Névkezelőt használd hozzá.
A képletben a
HA(GYAKORISÁG(HOL.VAN(nevsor;nevsor;0);SOR(INDIREKT("A1:A"&DARAB2(nevsor))))>0;1;0)rész szűri ki az ismétlődéseket, 1-et írva a név első megjelenéséhez, 0-t pedig az ismétlődéshez.üdv.
-
Mutt
senior tag
válasz
Colin111
#37796
üzenetére
Egy hosszú képlet esetleg Excel 2010 vagy frissebb esetén:
=HA(K1>SZORZATÖSSZEG(1/DARABTELI(nevsor;nevsor));"Nincs több név";INDEX(nevsor;ÖSSZESÍT(15;6;HOL.VAN(nevsor;nevsor;0)/HA(GYAKORISÁG(HOL.VAN(nevsor;nevsor;0);SOR(INDIREKT("A1:A"&DARAB2(nevsor))))>0;1;0);K1)))Létre kell hoznod a névkezelőben nevsor névvel egy dinamikus tartományt, a képlete (Munka1 füzet esetén):
=ELTOLÁS(Munka1!$A$2;0;0;DARAB2(Munka1!$A:$A)-1) -
Fferi50
Topikgazda
válasz
Colin111
#37794
üzenetére
Szia!
A neveket másold le egy külön oszlopba, majd ismétlődések eltávolítása. - ezáltal csak egy-egy név marad.
A léptetőnek a min-max értékét ehhez az oszlophoz igazítsd.
Ha mondjuk az X oszlopban vannak a nevek, a léptető pedig a K1 cellához van kapcsolva, akkor a képlet=Index($X$1:$X$10;$K$1)
amit írhatsz pl. a K2 cellába akár.Üdv.
Új hozzászólás Aktív témák
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- World of Warships
- Lassan 2027-re is elfogy a TSMC 2 nm-es gyártókapacitása
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- BestBuy topik
- Pedzegeti az új Xbox irányát a Microsoft
- Samsung Galaxy S25 - végre van kicsi!
- Ilyen olcsó sem volt még egy Apple notebook
- Gyúrósok ide!
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- Apple iPhone 12 Mini 64GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 11 64GB,Újszerű,Dobozaval,12 hónap garanciával
- BESZÁMÍTÁS! Asus H310M i7 9700F 16GB DDR4 512GB SSD STRIX RTX 2070 Super 8GB Corsair Crystal 550W
- BESZÁMÍTÁS! AMD Ryzen 7 5800X3D 8 mag 16 szál processzor garanciával hibátlan működéssel
- Apple iPad Air 2 (A1567) 32GB Wi-Fi + Cellular Arany
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
A hol.van függvény m,egadja, hogy egy vektorban hányadik elem a keresett érték, amit az indexbe megadva vissza lehet kerestetni egy tömbben lévő értéket. Ha duplán használod a hol.van függvény (sorra és oszlopra is), akkor nagyon pont egy két dimenziós paraméter táblát készítettél.
Fferi50