Bevezetés az alkalmazott informatikába / BMEEPAG0203

Elágazás, feltételes összegzés, cellák elnevezése, rendezés, szűrő

Tartalomjegyzék:

  1. Másodfokú egyenlet
  2. Tervezés alatt álló épület költségterve
  3. Adatok szűrése, rendezése

Bevezető

Elágazás
Képlet:
Eredmény:

Bizonyos esetekben valamilyen feltételhez kötjük az elvégzendő műveletet. Az IF() (HA()) függvény segítségével tudunk vizsgálni egy feltételt és meg tudjuk határozni, hogy mi történjen, ha igaz és mi történjen, ha hamis a feltétel. A függvény használata:

IF(feltétel; érték_ha_igaz; érték_ha_hamis)
feltétel:
ide olyan képletet kell írni, aminek az értéke igaz vagy hamis lehet. Lehet egy cellára hivatkozni (pl. B3), vagy valamilyen összehasonlítást használni (pl. B3>2 vagy B3=2).
érték_ha_igaz:
itt kell megadnunk, hogy ha a fenti feltétel eredménye "igaz", akkor milyen műveletet végezzen el a program. Kerülhet ide egy függvény (pl. sum(B2:B5)) vagy szöveg, szám.
érték_ha_hamis:
itt kell megadnunk, hogy ha a fenti feltétel eredménye "hamis", akkor milyen műveletet végezzen el a program.

TIPP: Az Excel a számokat is tudja értelmezni igaz/hamis értékként. Ha egy szám nullától különböző, akkor "igaz", ha nulla, akkor "hamis".

Feltételes aggregáció

Az IF() függvény szabadon kombinálható a többi függvénnyel ezáltal a legtöbb elágazást igénylő feladat megoldható vele. Vannak viszont olyan speciális esetek, amelyekre olyan gyakran szükségünk lehet, hogy külön Excel függvény is létezik hozzájuk. Ezek a feltételes aggregációs függvények, például a COUNTIF() (DARABTELI()) függvény. A függvény megszámolja, hogy hány olyan cella van a kiválasztott tartományban, amelyre igaz a feltétel. Használata:

COUNTIF(tartomány; feltétel)
tartomány:
azon cellák, amelyekben ellenőrizzük, hogy teljesül-e a feltétel
feltétel:
ha egyenlőséget vizsgálunk, akkor csak az adatot írjuk be (pl. A2), összetett vizsgálatnál idézőjelek közé kell tennünk a feltételt (pl. ">0" vagy ">"&A2)

További feltételes aggregációs függvények:

Ezek a függvények kicsit bonyolultabbak, mert lehetőséget adnak arra, hogy a vizsgált és az összegzett/átlagolt tartomány különböző legyen. A SUMIF() függvény használata:
SUMIF(vizsgált_tartomány; feltétel; [összegzési_tartomány])
tartomány:
azon cellák, amelyekben ellenőrizzük, hogy teljesül-e a feltétel
feltétel:
ha egyenlőséget vizsgálunk, akkor csak az adatot írjuk be (pl. A2), összetett vizsgálatnál idézőjelek közé kell tennünk a feltételt (pl. ">0" vagy ">"&A2)
összegzési tartomány:
azon cellák, amelyek tartalmát össze szeretnénk adni, ha a vizsgált_tartomány adott sorában a feltétel igaz

TIPP: Ha a függvény egyik bemeneti paramétere szögletes zárójelben van, akkor azt nem kötelező megadni.

Tartomány elnevezése

Bonyolult képletek esetén átláthatóbb a megoldás, ha nem az alapértelmezett cellaneveket használjuk, hanem egyedi neveket adunk a tartományoknak. Elnevezhetünk egy darab cellát (pl. "A1" helyett "hossz"-ra), vagy egy tartományt is (pl. "B2:B10" helyett "darab"). Az elnevevezéshez a név mezőben át kell írnunk a cella nevét a választott névre. A nevek törlése/módosítása a Formulas / Name manager menüben lehetséges.

TIPP: Ha egyedi névvel hivatkozunk egy tartományra/cellára, akkor az Excel azt automatikusan abszolút hivatkozásként kezeli.

Teljes oszlopot is elnevezhetünk. Ekkor az oszlopfejlécre kattintva ki kell jelölni a teljes oszlopot és a név mezőben átírni a nevét (pl. "A:A" helyett "ertek"-re). Amennyiben ezután olyan képletet szeretnénk használni, amely az A oszlop adott sorában lévő elemre hivatkozik, akkor az oszlop neve elé egy @ jelet kell tenni. Így az @ertek a B2 cellában az A2 cellát jelenti, a B3 cellában az A3-at és így tovább.

Másodfokú egyenlet

Feladat: az ax² + bx + c = 0 másodfokú egyenlet megoldásait írjuk ki az a, b, c paraméterek függvényében. Ha nincs megoldás a valós számok halmazán, akkor írja ki a program, hogy "a diszkrimináns negatív"!

Az ax² + bx + c = 0 másodfokú egyenlet megoldóképlete:
, a diszkrimináns pedig a gyök alatti rész. Ha a diszkrimináns negatív, akkor nincs megoldása az egyenletnek a valós számok halmazán.

Először hozzuk létre a paramétereket és nevezzük is el a cellákat, hogy a képletekben egyszerűen hivatkozhassunk rájuk.

Számoljuk ki a diszkriminánst és vizsgáljuk, hogy negatív-e.

A megoldóképletet csak akkor használjuk, ha a diszkrimináns nemnegatív, egyébként pedig írjuk ki, hogy "negatív diszkrimináns". Az IF() függvény használatával elkerülhetjük, hogy az Excel megpróbáljon negatív számból gyököt vonni. Először megvizsgáljuk, hogy a diszkrimináns nemnegatív-e és csak akkor helyettesítünk be a megoldóképletbe, ha a vizsgálat eredménye "igaz".

TIPP: Ha azt szeretnénk, hogy egyáltalán ne kerüljön semmi a cellába, akkor a "negatív diszkrimináns" helyett írjuk az alábbit "".

Tervezés alatt álló épület költségterve

Feladat: egy nagy épület éppen tervezés alatt áll. Sajnos a tervről még nem sokat lehet tudni, még a belmagasság sincs megadva, azt viszont tudjuk, hogy téglalap alakúak a helyiségek. Ha véglegesednek a tervek, akkor Ön egy .csv fájlban fogja megkapni a helyiségek adatait (helyiségnév, hossz, szélesség, padlóburkolat). Ekkor nagyon rövid idő alatt válaszolnia kell majd az alábbi kérdésekre:
- hány m² kell az egyes burkolattípusokból?
- összesen mennyibe kerülnek az egyes burkolatok fajtánként?
- az egyes burkolatok hány helyiségben szerepelnek?
- hány m²-t kell lefesteni?
Készítsen el úgy egy táblázatot, hogy amikor megkapja az adatokat és kiderül, hogy pontosan mely burkolatok és festék lesz betervezve (és ez esetleg később még megváltozik), akkor ezeket gyorsan be tudja írni és a kért adatokat kiszámolni.

A .csv fájlt könnyen be tudjuk olvasni az Excellel. Ha az ábra szerinti formátumban érkeznek az adatok, akkor minden sorhoz egy helyiség tartozik és négy oszlopunk lesz: helyiségnév, hossz, szélesség, padlóburkolat. Először készítsük el ezeknek az adatoknak a helyét és írjunk be tetszőleges adatokat, hogy legyen mivel dolgozni.

A padlóburkolathoz az alapterületet kell kiszámolnunk, a festékhez pedig a falfelületet + a mennyezet felületét. Ezeknek hozzunk létre külön oszlopokat az adatok mellett.

TIPP: Ha nem sikerült az elnevezés, mert véletlenül rossz tartományt neveztünk el, akkor a Formulas / Name manager menüpontban tudjuk kitörölni az elrontott nevet.

A festendő felület kiszámításához szükségünk lesz majd a belmagasságra is. Ezt még nem tudjuk, hozzunk létre egy cellát, amibe majd beírhatjuk.
Számítsuk ki az alapterületet és a festendő felületet. Figyeljünk az elnevezett tartományokra való hivatkozásnál, hogy az oszlophivatkozásoknál mindig az adott sorban lévő elemre lesz szükségünk, ezért "@"" jelet kell írni a név elé. A belmagasságra való hivatkozásnál viszont nincs szükség "@" jelre.
Ezekből az adatokból már könnyen ki tudjuk számolni a kért értékeket.

Adatok szűrése, rendezése

Feladat: az előző feladatban tárgyalt épület terve elkészült, az adatokat a helyiseglista.csv fájlban kaptuk meg. A belmagasság 3m, az árakat nekünk kell megbecsülni. A táblázatot egyeztetésre kell vinnünk, ahol gyorsan kell tudnunk válaszolni olyan kérdésekre, hogy:
- Melyik helyiség a legnagyobb?
- Mutasson egy listát a parkettával burkolt helyiségekről!
- Mutasson egy listát a 30m²-nél nagyobb helyiségekről!
- Nézzük végig a helyiségeket padlóburkolatonként, alapterület szerint növekvő sorrendben! Készüljön fel az egyeztetésre. Olvassa be az előző feladatban elkészített táblázatba az adatokat, majd használjon szűrőt és végezze el a fenti lekérdezéseket.

Először töröljük ki a random beírt adatainkat és töltsük fel a helyes értékekkel.

A burkolatokról szóló, jobboldali kis táblázatokban a burkolatok neveit javítani kell. Kapcsoljuk be a szűrőt, hogy meg tudjuk nézni hány különféle burkolat van.

Megoldását összevetheti a megoldókulccsal.

A szűrő használatával válaszoljunk a fenti kérdésekre.

A szűrő helyett feltételes formázást is használhatunk a második és a harmadik kérdéshez:

Megjegyzés: Bonyolultabb táblázatok, többszáz helyiséges épületek esetén a fenti megoldás lassú, sok hibázási lehetőségeket tartalmaz. A dinamikus képletek segítségével lehetőség van még hatékonyabban megoldani hasonló feladatokat. A dinamikus képletek a Digitális ábrázolás c. tárgy anyagában szerepelnek.