Grafikon ne kövesse a sorbeszúrást

Táblázatkezelő
fecobacsi
Hozzászólások: 4
Csatlakozott: 2011. április 11., hétfő 22:56

Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: fecobacsi »

Sziasztok!

Van egy grafikonom, amivel árfolyamot szeretnék ábrázolni oly módon, hogy az mindig CSAK az első X cella értékeit mutassa. Fordított sorrendet szeretnék használni, tehát az xy1-es cellába szeretném írni a legfrissebb árfolyamot, míg az xy2..30-as cellákba fokozatosan a régebbiek kerülnek. Az elgondolás az, hogy a legfrissebb árfolyam begépeléséhez mindig új sort szúrok be az elejére, ezzel együtt a régi xy30-as cella értéke kikerül a grafikon látóteréből. Így elvben mindig a legutóbbi 30 napot jelenítené meg. Gyakorlatban viszont ha sort szúrok be, a grafikon adatsorában is követik a hivatkozások a régi cellákat, így a grafikon tk. mozogni kezd a sorokkal együtt, nem "áll meg egyhelyben". A beállítások közt szétnéztem, de nem lettem okosabb. Hogy lehetne mégis kicselezni a grafikont, hogy megtudjam a problémát oldani? Ragaszkodnék a felvázolt fordított elrendezéshez is (remélem, érthető volt, amit megpróbáltam előadni :? )
LibreOffice 3.3 a SuseLinux 11.4-en
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4084
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: Zizi64 »

Üdv!

Az biztos, hogy sikerült a nehezebb utat választanod. De természetesen megoldható a feladat. (Kérdés, hogy tetszik-e majd a megoldás?) Itt van néhány működőképes ötlet. Munkaidő igénye: változó (főleg, ha az alkalmazott elemeket először meg kell ismerned, tanulmányoznod kell.)

"A"
így a grafikon tk. mozogni kezd a sorokkal együtt, nem "áll meg egyhelyben".
Úgy érted, hogy a Munkalapon belüli helyzete változik meg? Grafikusan lejjebb csúszik? Ha IGEN a válasz:
1. Tedd a grafikont másik munkalapra, akkor nem mozog (a pozíciója nem változik) az eredeti lap sorbeszúrásával együtt.
2. Hagyd az eredeti lapon, de horgonyozd a grafikont a LAP-hoz a CELLA helyett.


"B"
Fordított sorrendet szeretnék használni,
Gondolom, csak a táblázatban akarod a fordított sorrendet (fentről lefelé csökkenő dátummal) a grafikonon pedig balról jobbra növekvők legyenek a dátumok. Ha IGEN:
1. Használj egy sorrendfordító segédtáblázatot. A segédtáblázat soraiba kézzel írj hivatkozásokat az eredetire, csak fordított sorrendben. A segédtáblázat adatait ábrázold a grafikonon.
2. Használj PONT grafikont (angolul: Scatter) ahol bejelölheted, hogy az X tengely adatai álljanak növekvő sorrendbe. Így a táblázathoz képest automatikusan megfordul az ábrázolás sorrendje. (A név zavaró egy kicsit, mert nem csak pontokat tud természetesen megjeleníteni ez a grafikon fajta. A lényege, hogy az X tengelyen nem egyszerű egyenletes osztás jön létre, hanem valódi, az X értékekhez alkalmazkodó számarányos osztásköz. A te esetedben fontos, hogy a dátumok ténylegesen Dátum /szám/ formátumban legyenek beírva, és ne szövegként. Ez esetben tudja csak kiszámolni a Calc, hogy az új beírt dátumod (X értéked) milyen "távol" van az előzőtől a grafikonon. Tehát, ha véletlenül kihagysz egy napot az adatbeírásban, akkor a következő pont kétszer olyan távol lesz az X tengely mentén.)

"C"
Gyakorlatban viszont ha sort szúrok be, a grafikon adatsorában is követik a hivatkozások a régi cellákat,
1. Használd az előzőkben jelzett segédtáblázatot INDIREKT() hivatkozással. Az nem fog a beszúrt sorral együtt "növekedni" frissülni.
2. Írj egy makrót, ami a mindenkori első 30 cellapár adatait (hivatkozás-mentesen) átmásolja a segédtábla területére, ahonnan a grafikon az adatokat veszi. Így nem tud "frissülni" a hivatkozás az új sor beszúrásakor.

Javasolt megoldási kombináció: A2-B2-C1

Bónusz ötlet:
Használj csúszkát az ábrázolni kívánt időintervallum kijelöléséhez, kontrollálásához. Így bármikor vissza, vagy előre "tekerheted" az ábrázolt tartományt.
A feltöltött mintapéldámban (ez egy régebbi fájl, kicsit aktualizálva) csak egy pontot vezérlek csúszkával, de természetesen lehet az összes ábrázolt pontot csúszkával kiválasztani egy nagyobb cellatartományból.
Csúszkás_grafikon.ods
(18.12 KiB) Letöltve 131 alkalommal.
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].
fecobacsi
Hozzászólások: 4
Csatlakozott: 2011. április 11., hétfő 22:56

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: fecobacsi »

Köszi Tibor a tippeket, de kicsit félreérthető voltam ezek szerint, mert:

1, a grafikon helyzete nem változik, természetesen másik munkalapon van. Az a problémám vele, hogy ha sort szúrok be, ugyanazokra a meglévő sorokra fog továbbra is hivatkozni, mivel velük növekszenek az adattartomány abszolút/relatív hivatkozásai is. Pl ha A1=1 A2=2 A3=3 volt, és én sort szúrok be az elejére, majd beírom, az új értéket, hogy A1=0 (ekkor A2=1 A3=2 A4=3 lesz ugye), a grafikon nem fog tudomást venni az új értékről (A1=0), mert a sor beszúrással növekszenek a hivatkozásai is, így az továbbra is az 1,2,3 értékeket jeleníti meg. Erre értettem, hogy "mozog", mert a régieket figyeli tovább, és nem követi rugalmasan a változásaimat, nem tudom neki megmondani, hogy fixen az első X mezőt nézze csak, a hátrább kerülő értékeket pedig ejtse ki, ne foglalkozzon velük többet (az a baj, körülírni nehezebb, mint egy pár soros munkalapon rekonstruálni az egészet).

2, Természetesen a fordított sorrendet is használom a grafikonon, ezt szerencsére natívan be tudtam lőni a grafikonokon (több típuson is), nem kellett segédtáblázatot használnom hozzá.

3, Nem említettem ugyan, de nem szeretem a makrókat, szeretném minél elegánsabban megoldani, a táblázatkezelő saját lehetőségeivel.

U.I.: száz szónak is egy a vége, tk a grafikon adattartományainak az automatikus megváltozását szeretném valahogy kikapcsolni, de az abszolút, és a relatív hivatkozások is egyaránt változnak sorbeszúráskor. Minden további ötletet szívesen veszek, az eddig (és jövőbeni) segítséget pedig hálásan köszönöm!!!

Fecó
LibreOffice 3.3 a SuseLinux 11.4-en
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4084
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: Zizi64 »

...Akkor csak a segédtáblázatra és az INDIREKT() függvényre van szükséged.
A függvénynek "String" típusú bemenőparamétere van, az nem fog frissülni az új sor beszúrásakor.
Ha A1-ben kezdődik az adathalmazod akkor a segédtábla - mondjuk egy másik munkalapon - a segédtábla első cellája legyen:
=INDIRECT(A1)
...és így tovább
=INDIRECT(A30)-ig.
A segédtáblát használd a grafikon bemenő adataként.
(Ha az "A" oszlopban van a dátum, a "B" oszlopban az adat, akkor mindkettőre használd az INDIREKT() függvényt.)

Ha feltöltesz ide egy adatokkal, grafikonnal előkészített fájlt, akkor konkrétabb segítséget is tudok esetleg adni, de én nem állok neki adatokat, adatszerkezetet kitalálni, egyszerűbb és kevesebb időbe telik, ha a te félkész megoldásodat próbáljuk továbbfejleszteni...
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].
fecobacsi
Hozzászólások: 4
Csatlakozott: 2011. április 11., hétfő 22:56

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: fecobacsi »

Köszi mégegyszer a tippeket, ezt az INDIREKT-dolgot holnap kipróbálom.

Fecó
LibreOffice 3.3 a SuseLinux 11.4-en
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4084
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: Zizi64 »

Ügyelj arra, hogy magyar, vagy angol függvénynevet kell használnod (az aktuális beállításaidnak megfelelően) INDIRECT - INDIREKT (én nem támogattam - véleményemmel, szavazatommal - a függvénynevek magyarítását... ;) )

Egyébként biztos van még néhány további megoldás is, nekem "perpillanat" ezek jutottak eszembe.

szeretném minél elegánsabban megoldani
Való igaz, hogy a makrós megoldással sokat lehet rontani az MS formátumokkal való kompatibilitáson, de én a makrós megoldásokat is elegánsnak gondolom.
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].
fecobacsi
Hozzászólások: 4
Csatlakozott: 2011. április 11., hétfő 22:56

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: fecobacsi »

Szia, egy egyszerű kis táblázaton kipróbáltam a függvényt, és valóban működik. Kicsit viszont szívtam vele, mire rájöttem a nyitjára, úgyhogy pontosítanék egy-két dolgon, hátha még másnak is hasznára lesz. Tehát a valódi formulája: =INDIRECT("CELLA";valamilyen nullától különböző szám). Fontos, hogy a hivatkozott cella idézőjelek közt legyen, pl "C7", különben az eredmény hibaüzenet lesz. Ez amúgy nem derül ki egyértelműen az office súgójából, és a függvényvarázsló sem teszi idézőjelbe, így az is mindig hibával lépett ki. A záró idézőjel után egy pontosvessző jön, ami után ha nullát írunk, az erdmény is mindig nulla lett, ha viszont valamilyen más - nullától különböző szám - kerül utána, a hivatkozott cella értékét kapjuk eredményül. Ez valamilyen formátum-mizéria miatt van így a súgó szerint, de szerintem nagy jelentősége nincs. Ha nem adunk meg más paramétert a függvénynek, csak a hivatkozott cellát, akkor is megkapjuk a kívánt eredményt. Gyakorlatilag tehát az alábbi két formula uazt az eredményt adja:
=INDIRECT("C7";4)
=INDIRECT("C7")

Mégegyszer (és úgy tűnik most már végleg) köszi Tibor a tippjeidet!

Fecó
LibreOffice 3.3 a SuseLinux 11.4-en
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4084
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Grafikon ne kövesse a sorbeszúrást

Hozzászólás Szerző: Zizi64 »

Hű, ezt tényleg elrontottam!
Nem tettem idézőjelbe a példában a hivatkozást... Mentségemre legyen mondva, hogy a példát egy olyan fájlomból hoztam, aminél a hivatkozott (A1) cellában szöveges formában egy másik munkalap/cella neve volt szövegesen megadva... Úgy természetesen működik. Örülök, hogy nem sikerült teljesen félrevezetni téged!
Ez valamilyen formátum-mizéria miatt van így a súgó szerint, de szerintem nagy jelentősége nincs.
A második paraméter az "A1" és a "R1C1" (magyar: "S1O1") formátumú címzést váltja (alapértelmezett az "A1" (Betű-szám) koordináta megadás)
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].
Válasz küldése