Excel keresőfüggvény
Csökmei István Péter
csip at eoe.bmk.hu
2012. Már. 28., Sze, 05:46:14 CEST
> =csillagjegy(A1)
>
> Ez szerintem elegáns!
-nak is lenne nevezhető, ha az implementációban nem egy rakat else if -el oldottad volna meg, és gondoltál volna a hibás inputra is. pl. Mit csinál
akkor a függvényed, ha a "cseresznye" értékre hívják meg?
1. A nap értékét én egy Try ... Catch ... End Try szerkezetben alakítottam volna át.
2. Ez a feladat az esetkiválasztás tipikus esete, ezért sokkal elegánsabb lett volna egy
Select Case nap
Case 1 to 20
csillagjegy = "Bak"
Case 21 to 50
csillagjegy = "Vízöntő"
Case ...
...
...
...
Case Else
csillagjegy = "#HIBA"
End Select
3. Az egész úgy ahogy van ágyúval verébre. (az 1. és 2. pontok csak az eleganciáról szólnak)
> Az én megoldásom is egy dátumhoz keresi meg a csillagjegyet, így
> nyugodtan nevezhetjük keresőfüggvénynek.
> A feladat "specifikációban" nem volt szó "beépített", alias "gyári"
> függvényről.
A te megoldásod nem keres semmit. A te megoldásod egy adott változó értékét néhány esetre megvizsgálja.
Én is jártam már a Parlamentben és szoktam jókat vitatkozni, érvelni, mégsem vagyok politikus (nem is akarok az lenni). Sem gyárilag, sem egyébként.
> Apropó valaki megoldotta csak beépített keresőfüggvény használatával?
> :-) (ÉV, HÓNAP, NAP, stb. függvények nélkül)
Hmmm. DatePart ???? (nálad a második sorban :-) )
> Ha az algoritmizálás Neked "Bohóckodás" ....
>
Nem, nem az. De az ilyen Durrbele Balázs módszert elegánsnak nevezni kicsit erős.
A táblázatkezelőben a 3-nál több if egymásba ágyazása pedig az élveboncolás minősített esete. Nem beszélve arról, hogy ha nem használsz
keresőfüggvényt, akkor a megoldás rossz. Még akkor is, ha a kapott eredmény egyébként jó. Ebben az esetben azzal egyenértékű mintha pl. az E2:E8 (vagy
akárhol, akárhány) cellák értékeinek összegét valaki SUM helyett az =E2+E3+...+E8 módszerrel számolná, vagy (ami még rosszabb) zsebszámológéppel
kiszámolná és beírná az E9-be.
CsIP
További információk a(z) Techinfo levelezőlistáról