[Megoldva] Rekurzív függvényhívás kikerülése
[Megoldva] Rekurzív függvényhívás kikerülése
Sziasztok,
Az A8:A12 tartomány függvénnyel copizva B8:B12 be. Van egy zöld és egy fekete cellastílus. A B8:B12 tartomány celláit a MAX(B8:B12) szerint szeretném zöldre, vagy feketére színezni. A minta ods-ben látható. A B8-ban a kezdő függvény, de akárhogy variálnám rekurzív lenne és hibára fut. Milyen megoldások lehetségesek? Már kipróbáltam, hogy kikerülöm az aktuális cellát. A B9 ben mondjuk kikerülöm a B9-et valahogy így: MAX($B$8:INDIREKT(CÍM(SOR(B9)-1;2;4)); MAX($B$8:INDIREKT(CÍM(SOR(B9)+1;2;4)):$B$12)
A fenti függvény kikerülné az aktuális cellát, de így is rekurzívra fut a következőnél. Azon is ügyködtem, hogy ne legyen függvény mindig csak az aktuális cellában, de ez lehetetlen.
Talán elég értelmesre sikerült.
Az A8:A12 tartomány függvénnyel copizva B8:B12 be. Van egy zöld és egy fekete cellastílus. A B8:B12 tartomány celláit a MAX(B8:B12) szerint szeretném zöldre, vagy feketére színezni. A minta ods-ben látható. A B8-ban a kezdő függvény, de akárhogy variálnám rekurzív lenne és hibára fut. Milyen megoldások lehetségesek? Már kipróbáltam, hogy kikerülöm az aktuális cellát. A B9 ben mondjuk kikerülöm a B9-et valahogy így: MAX($B$8:INDIREKT(CÍM(SOR(B9)-1;2;4)); MAX($B$8:INDIREKT(CÍM(SOR(B9)+1;2;4)):$B$12)
A fenti függvény kikerülné az aktuális cellát, de így is rekurzívra fut a következőnél. Azon is ügyködtem, hogy ne legyen függvény mindig csak az aktuális cellában, de ez lehetetlen.
Talán elég értelmesre sikerült.
- Csatolmányok
-
- test.ods
- (14.8 KiB) Letöltve 130 alkalommal.
A hozzászólást 1 alkalommal szerkesztették, utoljára Aimre 2015. február 17., kedd 18:04-kor.
LibreOffice Verzi??: 4.2.4.2
XP
XP
- Zizi64
- Globális moderátorok
- Hozzászólások: 4084
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: Rekurzív függvényhívás kikerülése
Próbáltad már a feladat megoldására a "Feltételes formázás" funkcióját használni a programcsomagnak ?
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
- Zizi64
- Globális moderátorok
- Hozzászólások: 4084
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: Rekurzív függvényhívás kikerülése
Ötletek ( a beépített feltételes formázás használatán túl):
1.: Bekapcsolod az iterációt, és beállítod 1 ciklusra. Ekkor nem jelez rekurziós hibát a program. (Merthogy ez a funkció pont az iterációt igénylő matematikai számítások elvégzésére találták ki. Csupán egy beállítási lehetőség van, tehát meg kell gondolni, hogy saját makró függvénnyel iterálsz - annyiféleképpen, ahogy csak akarsz -, vagy felhasználod ezt az egy beállítási lehetőséget. De ha másra nem kell ez a funkció, akkor használhatod akár ennek a feladatnak a megoldására is.)
2.: Ha már úgyis egy forrás-cellatartományt másolsz át, akkor miért nem vizsgálod a forrástartomány elemeit? (Ehhez persze pontosan tudni kéne, hogy a vizsgált tartomány az valóban "csúszó" (azaz: relatív koordinátákkal bír), ahogy az egyetlen képletben azt megadtad - vagy rögzített, abszolút?
1.: Bekapcsolod az iterációt, és beállítod 1 ciklusra. Ekkor nem jelez rekurziós hibát a program. (Merthogy ez a funkció pont az iterációt igénylő matematikai számítások elvégzésére találták ki. Csupán egy beállítási lehetőség van, tehát meg kell gondolni, hogy saját makró függvénnyel iterálsz - annyiféleképpen, ahogy csak akarsz -, vagy felhasználod ezt az egy beállítási lehetőséget. De ha másra nem kell ez a funkció, akkor használhatod akár ennek a feladatnak a megoldására is.)
2.: Ha már úgyis egy forrás-cellatartományt másolsz át, akkor miért nem vizsgálod a forrástartomány elemeit? (Ehhez persze pontosan tudni kéne, hogy a vizsgált tartomány az valóban "csúszó" (azaz: relatív koordinátákkal bír), ahogy az egyetlen képletben azt megadtad - vagy rögzített, abszolút?
Kód: Egész kijelölése
=A12+STYLE(IF(CURRENT()>=MAX(A$8:A$12);"zöld";"fekete"))
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Re: Rekurzív függvényhívás kikerülése
Szia!
Hát, eszembe se jutott, pedig nyilvánvaló. Azért nem sajnálom, mert egy kicsit játszottam a függvényekkel. Mindenesetre kétszer is meggondolom, mielőtt legközelebb új témát nyitok.
Imre
Hát, eszembe se jutott, pedig nyilvánvaló. Azért nem sajnálom, mert egy kicsit játszottam a függvényekkel. Mindenesetre kétszer is meggondolom, mielőtt legközelebb új témát nyitok.
Imre
LibreOffice Verzi??: 4.2.4.2
XP
XP
- Zizi64
- Globális moderátorok
- Hozzászólások: 4084
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: [Megoldva]Rekurzív függvényhívás kikerülése
...no de azt nem írtad le, hogy melyik megoldás, vagy ötlet vált be neked a legjobban?
- a feltételes formázás használata?
- az iteráció bekapcsolása?
- a körkörös hivatkozás megszüntetése?
- a feltételes formázás használata?
- az iteráció bekapcsolása?
- a körkörös hivatkozás megszüntetése?
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Re: [Megoldva] Rekurzív függvényhívás kikerülése
Szia,
A feltételes formázást használtam. A körkörös hivatkozást nem tudtam volna megszüntetni, mert az eredeti feladatban két cella különbsége van egy harmadikban, és annak a MAX() a kellett volna zölddel. Az iteráció bekapcsolását nem néztem meg.
Imre
A feltételes formázást használtam. A körkörös hivatkozást nem tudtam volna megszüntetni, mert az eredeti feladatban két cella különbsége van egy harmadikban, és annak a MAX() a kellett volna zölddel. Az iteráció bekapcsolását nem néztem meg.
Imre
LibreOffice Verzi??: 4.2.4.2
XP
XP
- Zizi64
- Globális moderátorok
- Hozzászólások: 4084
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: [Megoldva] Rekurzív függvényhívás kikerülése
Ezért van szükség a segítségadáshoz a feladat PONTOS ismeretére. Az nem baj, ha nem a valódi adatok szerepelnek az általad feltöltött mintafájlban - ha azok nem publikusak - de a struktúrája egyezzen meg az adott feladat adatstruktúrájával!A körkörös hivatkozást nem tudtam volna megszüntetni, mert az eredeti feladatban két cella különbsége van egy harmadikban, és annak a MAX() a kellett volna zölddel.
Sajnos arra még nem vagyok képes, hogy kitaláljam, hogy mire lenne valójában szükséged...

Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Re: [Megoldva] Rekurzív függvényhívás kikerülése
Szia,
Igazad van. Nekem most elég a feltételes formázás adta lehetőség.
Imre
Igazad van. Nekem most elég a feltételes formázás adta lehetőség.
Imre
LibreOffice Verzi??: 4.2.4.2
XP
XP