-
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
aktív tag
válasz bartucz911 #41001 üzenetére
Szia,
Köszi a pontosítást. Beépített függvényekkel nem sikerült értelmes eredményt kihoznom, de ha UDF (makrós függvény) is játszik, akkor ezt próbáld ki. Alt-F11-el VBE szerkesztő megnyilik, majd ott Insert -> Module és a megjelenő üres ablakba másold be a kódot.
Function NextMatch(adat As Range)
Dim szam As Range
Dim szamok As New Collection
On Error GoTo ismetlodes
For Each szam In adat
If Len(szam.Value) > 0 Then
szamok.Add szam.Value, CStr(szam.Value)
End If
Next szam
Exit Function
ismetlodes:
NextMatch = szamok.Count
End FunctionEzek után lesz egy NextMatch függvényed, amely egy tartományt vár ahol a vizsgálandó számok vannak (a tartomány elejét ne fixáld!).
üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Fferi50
őstag
válasz bartucz911 #41001 üzenetére
Szia!
Segédoszlopokkal és sok képlettel valósítható meg, ha nem szeretnél makrózni, mivel előre nem lehet tudni, hogy hány számot kell megvizsgálni.
Ha feltételezzük, hogy az A oszlopban vannak a számaid, a B oszlopba szeretnéd látni a lépésszámot, a C oszlopban (esetleg) az ismétlődő számot, akkor a segédoszlopok - hogy elkülönüljenek- kezdődjenek az E oszlopban.
Az E2 cella képlete:=HAHIBA(HOL.VAN($A2;$A3:$A$62;0);1000)
Az F2 cella képlete:=HA(DARABTELI($A$2:$A3;$A3)=1;HAHIBA(HOL.VAN($A3;$A4:$A$62;0)+OSZLOP()-5;1000);1000)
A G2 cella képlete:=HA(DARABTELI($A$2:$A4;$A4)=1;HAHIBA(HOL.VAN($A4;$A5:$A$62;0)+OSZLOP()-5;1000);1000)
A H2 cella képlete:=HA(DARABTELI($A$2:$A5;$A5)=1;HAHIBA(HOL.VAN($A5;$A6:$A$62;0)+OSZLOP()-5;1000);1000)
és így tovább, annyi oszlopon keresztül, ahány számig szeretnéd az összehasonlítási lehetőséget, mindig egy-egy sorral lejjebb téve a vizsgálódás tárgyát. A keresendő tartomány végét, ami most $62, a te tartományod végére állítsd be. Az 1000 egy kellőképp nagy szám, legyen a magasabb, mint az utolsó értéket tartalmazó sor.
A képletet húzhatod lefelé az oszlopokon, ameddig már nincs összehasonlítható szám.
A B2 cella képlete:=MIN(E2:X2)
A C2 cella képlete:=INDIREKT("A" & B2 +SOR() )
Ez is húzható lefelé az oszlopban.
Üdv.
Ps. Persze ez elég bonyolult. A makró sokkal egyszerűbb megoldás.[ Szerkesztve ]
Új hozzászólás Aktív témák
- Xbox Series X|S
- Veszprém és környéke adok-veszek-beszélgetek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen routert?
- Robogó, kismotor
- Kerékpárosok, bringások ide!
- Egészen nagy teljesítményspektrumon fedné le a mobil piacot az AMD
- Az átlagnál vaskosabb ventilátorok kandikáltak ki a Corsair vitorlája mögül
- exHWSW - Értünk mindenhez IS
- gban: Ingyen kellene, de tegnapra
- További aktív témák...