Telefonszámunk: 1-472-0679

[Resolved] Számolás feltételes formázás érvényesülésekor

Kezdőlap Fórumok Excel témák [Resolved] Számolás feltételes formázás érvényesülésekor

Topic Resolution: Resolved
12 bejegyzés megtekintése - 1-12 / 12
  • Szerző
    Bejegyzés
  • #9322
    Csabi982
    Felhasználó

    Sziasztok!
    Segítséget szeretnék kérni.
    Arra keresem a megoldást, hogy feltételes formázás érvényesülése esetén, hogyan tudnám összeadni a következő 5 cella értékét.
    Eddig nem vittem sikerre a dolgot.

    Attachments:
    You must be logged in to view attached files.
    #9324
    horvimi
    Adminisztrátor

    Szia!

    Makrókkal lehet eseményeket kezelni, és leprogramozni, hogy mi történjen pl. egy cella módosulása esetén.
    Olyan esemény viszont nincs, hogy feltételes formázás érvényesülése.
    Olyan van, hogy cella értékének változása. Meg lehet nézni, hogy melyik cella változott, mi az új értéke, és a változás után más celláknak vagy tartományoknak mi lett az értéke vagy szummája.
    Nagyon vigyázni kell ezzel, mert ha egy cella változik, az kiváltja az eseményt, és ha az eseménykezelővel módosítasz más cellákat, azok ismét kiváltják a change eseményt, stb…

    De nekem nagyon gyanús, hogy ha egy kicsit jobban leírod a feladatot, akkor kiderül, hogy nem csak így lehet megoldani a kérdést.
    Talán a feltételes formázás feltételét vizsgálva egy HA függvénnyel is meg lehetne csinálni az összegzést. Kérdés, hogy melyik cellában/cellákban kellene megjelennie és melyik 5 cella összege?

    Amit kihámoztam:
    A oszlop
    —————–
    Ha az aktuális sor értékeinek összege nagyobb, mint a készlet, akkor legyen piros

    Sorok
    ——————-
    Ha az értékek gördített összege átlépi a készletet, legyen piros.

    Tehát pirossá válást nem lehet vizsgálni, a change esemény vizsgálata lehet, hogy elég bonyolult lenne, és kérdéses, hogy makrókhoz értesz-e?
    Ha nem, akkor marad a feltételes formulás megoldás.

    Imre

    #9329
    Csabi982
    Felhasználó

    Szia imre!
    Sajnos a makrókról még annyit sem tudok mint az excelről.
    Sejtettem, hogy rosszul tettem fel a kérdést.
    Azt a pontot szeretném megtalálni a táblázatban ahol az igény már nagyobb mint a készletem (ahol pirossá válik a feltételes formázásal), és az első piros cellától kéne számolni, mert csak ö napos készletet gyárthatok le egyszerre.

    Csabi

    #9331
    horvimi
    Adminisztrátor

    Hűha, ez nagy kihívás Excel formulákkal.
    Nekem nem is nagyon sikerült elsőre.

    Csak pontosítás miatt vegyünk egy sort.
    Ott balról jobbra menve az értékek között, meg kell keresni az elsőt, ahol a sor gördülő összege >= mint a sor elején lévő készlet. Ezután a megtalált cellától kezdve balra a megelőző cellák összege kell. Elvileg 5 nap, de a példádon az látszik, hogy van olyan, amikor nincs 5 érték az elejéig (20, illetve 23. sorok) Ilyenkor gondolom csak annyi napot mész vissza, amennyi az elejéig tart. A 23. sort véve ez 300+0+0?

    Ha lenne egy másik tábla, ahol az értékek helyén a kummulatív összegek vannak, akkor már talán összejöhet.

    És persze ott van a lehetőség, hogy le lehet programozni (makró)

    #9332
    Csabi982
    Felhasználó

    Érdekelne a makórs megoldás is.
    Tudnál javasolni olyan felületet, ahol utána lehet olvasni, illetve érthetően elmagyarázza a makró lényegét?
    Nyitott vagyok egy kis tanulásra.

    #9333
    horvimi
    Adminisztrátor

    Hát, ingyenes magyar nyelvű makró kurzus nem nagyon van.
    Angol nyelven pedig elég sok, csak rá kell keresni.
    A Youtube-on is vannak 10 órás bevezető VBA kurzusok.

    Én kb. 30 éve programozok különböző nyelveken, ezért a VBA-t már könnyű volt megtanulnom x-dik nyelvként magamtól is.

    Ugyanis véleményem szerint nem a programnyelv a lényeges, hanem a gondolatmenet, az algoritmus, amit te kitalálsz, és leprogramozol.
    Ehhez sok kisebb-nagyobb projektet kell végigcsinálni és tapasztalatot szerezni.
    Meg persze kell hozzá egy attitűd, ami nem annyira tanulható…
    Bármilyen tanfolyam ehhez egy jó kezdő lökést adhat, a többi rajtad múlik…

    Én is készítettem egy bevezető makró kurzust, amit videotanfolyam formájában is el lehet érni.
    https://videotanfolyam.pentaschool.hu/

    Elég népszerű, de addig nem megy el, ami a te problémádhoz kell.

    A te problémádat programozási szempontból közepes nehézségűnek ítélem meg. Idáig eljutni, hogy önállóan megcsináld, nem kevés idő, legalább is szerintem.

    Imre

    #9335
    Csabi982
    Felhasználó

    Kipróbálom, hogy egy féléves hozzáféréssel mennyit tudok megtalnulni.
    Néztem már néhány videód Youtube-on azok tetszettek, érthetőek voltak.
    Ha valamit nem értek max sokat kérdezek.
    Köszönöm a segítséget.

    #9337
    horvimi
    Adminisztrátor

    Hát akkor hajrá, a videotanfolyam oldalon tudod megrendelni a hozzáférést.
    Utalásos számlát küldünk, és ha megjött a pénz, aktiváljuk a hozzáférést.

    De lényeges, hogy ez egy alap kurzus.

    Imre

    #9349
    Csabi982
    Felhasználó

    Hát úgy gondolom, hogy az alapoknál kell kezdenem a dolgot.
    Remélem e hét végre eljutok addig, hogy tudok foglalkozni a dologgal.

    Sok próbálkozás után megtaláltam a megoldást a HA és a Szum függvények egymásba ágyazásával.

    Attachments:
    You must be logged in to view attached files.
    #9351
    horvimi
    Adminisztrátor

    Durván néz ki a képlet, értem is, hogy mit akarsz, bár most esett le, hogy az átbillenéstől számítva hátrafelé kel menni 5 cellát.
    Viszont a képlet szerintem hibás.
    Ha neked jó eredményeket hoz, akkor OK, de különben a HA függvények elején a feltétel vizsgálatok az első kivételével nem stimmelnek.

    Nézzük a második elágazást:
    HA(SZUM($D4+$E4>$B4);SZUM($E4:$I4);különben tovább...)

    A SZUM függvény zárójeleiben ez van: $D4+$E4>$B4
    Ez azt jelenti, hogy adja össze a D4-et és az E4-et, és nézze meg, hogy az eredmény nagyobb-e, mint a B4. Ez a reláció IGAZ vagy HAMIS
    Jelenleg HAMIS, azaz nulla. Minden HA ágban ez egy darab logikai érték lesz
    Majd ezt szummázza. Szerintem a SZUM fv nem kell ide, mert az összeadás más szummáz.

    Helyesen szerintem minden ágban:
    HA($D4+$E4>$B4;SZUM($E4:$I4);különben tovább...)

    Lehet, hogy a SZUM nem zavar az eredményben, de az elhagyásável jóval rövidebb lesz a képlet.
    Persze látom, hogy elég sokat melóztál vele így egyesével, szóval ha működik, akkor nem kell bántani.

    Szerinted?

    Imre

    • A hozzászólás módosításra került: 1 month, 3 weeks telt el-horvimi.
    #9354
    Csabi982
    Felhasználó

    Hát nem 2 perc volt beírni, de a te verziód használom.
    Köszönöm a segítséget.

    Csabi

    #9357
    horvimi
    Adminisztrátor

    Nagyon szívesen!

    Imre

12 bejegyzés megtekintése - 1-12 / 12
  • Be kell jelentkezni a hozzászóláshoz.