Kezdőlap › Fórumok › Excel témák › Raktározási adattáblázat segítség › Hozzászólás: Raktározási adattáblázat segítség
Sziasztok!
Egy kicsit foglalkoztam a problémával, kizárólag a kétszintű legördülő listára koncentrálva, mert a többi dolog nem tűnik nehéznek, és talán meg is oldódott már.
A fő kihívás az, hogy a második táblában sorról sorra kell megjeleníteni a legördülő menüket. Az első oszlop szabálya egyszerű, lehet mindig ugyanaz, ami a gyümölcsök egyedi listája. A második oszlopban viszont feltétel mindig változhat annak függvényében, hogy milyen gyümölcsöt választottak az előző oszlopban.
Azért kérdeztem, hogy milyen Excel-t használsz, mert a 365-ben lévő tömbfüggvények, jelen esetben a FILTER (SZŰRŐ) segítségével megoldható a feladat.
Összességében viszont meglehetősen magas szintű dolgokat kellett bevetni:
– Táblázattá alakítás
– Abszolút oszlopcímzés táblázatban
– Tömb függvények: EGYEDI, SORBA.RENDEZ, SZŰRŐ
– Tömb hivatkozás
– OFFSET függvény
– Adatérvényesítési listaszabály tömbhivatkozó formulával
Ezek közül nem tudom melyeket ismered.
Az egész megoldást lépésenként leírni meglehetősen hosszú lenne.
Leírás nélkül meg kevés esély van a megértésre, ami kellene az implementációhoz.
Javaslom, hogy nézd meg a csatolt munkafüzetet, és jelezz vissza, hogy egyáltalán erre gondoltál-e
Most „csak” felhasználói leírást tudok adni:
Első lap
—————
1. Az első lapon lévő tartományt táblázattá alakítottam. Az a neve, hogy „raktar”
2. Ennek előnye, hogy a hozzáadott új sorokat automatikusan felveszi magába, nem kell a hivatkozásokat utólag bővíteni.
Sajátossága, hogy a táblázatra nevekkel lehet hivatkozni
3. A táblázat első oszlopából csináltam egy egyedi listát a harmadik lap (params) első oszlopába egy tömb formulával
Ez a tartomány adja az első lap első oszlopába a legördülő lista szabály forrását (params!$A$1#)
A # azt jelent, hogy az A1-nél kezdődő, bármeddig tartó tömb.
Ezzel az első lap legördülő menüje megvan. Ha új sort akarsz felvenni az első lapon, akkor csak az első szabad sorba kell kattintani a tábla végén, és a listamenüből választani egy elemet.
Ha új elemet akarsz felvenni, akkor csak gépeld be. A szabály megengedi. Ezután az új elem magától meg fog jelenni a params lap első oszlopában és az első lap legördülő listájában is.
Az adagszámot és a mennyiséget kézzel írjátok.
A második lap
——————-
Ezt is táblázattá alakítottam, csak az automatikus kiterjedés miatt
1. Az első két oszlopban van a két szintű legördülő lista
2. Az első szint forrása szintén a params lap A oszlopába lévő tömb.
3. A második szint hordozza ugye a fő kihívást.
Ehhez egy másik, speciális „önkarbantartó forrásrendszert kellett építeni tömbképletekkel a params lapra.
Ez a C oszlopban kezdődik, és annyi oszlopa van, ahány egyedi gyümölcsnév van az első lapon.
Az első sorban ezt a listát látod elforgatva, formulával létrehozva. Hivatkozása: $C$1#
A fejléc alatt van egy eléggé összetett hivatkozás, ami dinamikusan listázza a fejlécben lévő gyűmölcshöz tartozó adagszámokat, amelyek még nincsenek selejtezve. Ezt egy SZŰRŐ függvény csinálja. Ebben vannak az abszolút táblázat hivatkozások is)
4. A legördülő szabály a 2. szinthez
Ez volt a legnehezebb, mert itt követni kell, hogy az aktuális sorban kiválasztott gyümölcs adagszámait mutassa.
Ehhez ki kell keresni a választott gyümölcsöt a fenti táblázatrendszer fejlécében, majd ettől egyel lejjebb kezdődő tömb lesz a listaszabály forrása.
A formulát az adatérvényesítés szabályában találod. (OFFSET)
De játszogattam vele a params lapon fejlesztés közben is, az L1-ben látod.
Majd jelezz vissza, hogy erre gondoltál-e!
Imre