[Megoldva] aktív sor kiemelése
[Megoldva] aktív sor kiemelése
Egy nagy adathalmazzal dolgozom. Rendkívül megkönnyítené az áttekintést, ha egy makró megoldaná, hogy az éppen aktív cella egész sorát kijelölje/kiemelje, hogy szépen elkülönüljön (olyan színnel, amilyet én szeretnék, esetleg más betűstílussal, bármilyen formázási lehetőséggel).
Találtam a fórumon böngészve egy fájlt, amiben megvalósul a számomra szükséges megoldás. Annyi módosításra lenne szükségem, hogy más legyen a kiemelés színe (nem tudom, mit kellene átírnom, hogy ez megváltozzon?!) Illetve alapból aktív állapotban szeretném használni, nem gombnyomáshoz kötve a ki/bekapcsolását.
Előre is köszönöm a segítséget.
Találtam a fórumon böngészve egy fájlt, amiben megvalósul a számomra szükséges megoldás. Annyi módosításra lenne szükségem, hogy más legyen a kiemelés színe (nem tudom, mit kellene átírnom, hogy ez megváltozzon?!) Illetve alapból aktív állapotban szeretném használni, nem gombnyomáshoz kötve a ki/bekapcsolását.
Előre is köszönöm a segítséget.
- Csatolmányok
-
- crosshighlight_combined.ods
- (21.12 KiB) Letöltve 241 alkalommal.
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
Ja, értem már.Annyi módosításra lenne szükségem, hogy más legyen a kiemelés színe (nem tudom, mit kellene átírnom, hogy ez megváltozzon?!)
A makro nem egyedi színt, hanem a "kijelölés" általános tulajdonságait használja. A kijelölés az fix színű, nem állítható a LibreOffice beállításai között. (Például a megjegyzések színe állítható az Eszközök - Beállítások -Személyre szabás menüpontban.)
Talán átveszi az operációs rendszer beállításait - ez esetben egy másik színséma lehet, hogy megváltoztatja -, de az is lehet, hogy hardkódolva van a LO-ban.
Ha nem a 'kijelölés"-t használod a makródban, hanem eltárolod a sor tulajdonságait, beállítasz egy saját stílust, majd utána visszaállítod az eredeti tulajdonságait a sor összes cellája esetében, akkor - jó bonyolultan - működhet a dolog.
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].
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].
Re: aktív sor kiemelése
https://www.youtube.com/watch?v=bGjqDGF7xaM - Ez az Excel verziója annak, amire egészen pontosan szükségem lenne.
Amit én felcsatoltam, az is jó lenne ideiglenesen, ha automatikusan működne, miután feltöltöm az én kis Calc táblázatomba a macrot. (mert, ha most betöltöm azokat a kódokat, amik ebben megtalálhatóak, nem csinálja a dolgát)
Amit én felcsatoltam, az is jó lenne ideiglenesen, ha automatikusan működne, miután feltöltöm az én kis Calc táblázatomba a macrot. (mert, ha most betöltöm azokat a kódokat, amik ebben megtalálhatóak, nem csinálja a dolgát)
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
Egyáltalán nincs már Excel-em több, mint 10 éve: nem tudom kipróbálni, hogy a videóban látott dolog milyen makrót eredményez, és az hogyan működik.https://www.youtube.com/watch?v=bGjqDGF7xaM - Ez az Excel verziója annak, amire egészen pontosan szükségem lenne.
Ezért kellene a te mintafájlod: akkor láthatnám, hogy abban miért nem működik. Mert a csatolt .ods fájl nekem is működik a LO 6.1.5 verziómmal. Minta nélkül nem tudok mit mondani.Amit én felcsatoltam, az is jó lenne ideiglenesen, ha automatikusan működne, miután feltöltöm az én kis Calc táblázatomba a macrot. (mert, ha most betöltöm azokat a kódokat, amik ebben megtalálhatóak, nem csinálja a dolgát)
Kérdezni is csak annyit: az On/Off gombok funkcióját ki akarod váltani a te verziódban, vagy megfelel, hogy a figyelőt (a Listener-t) gombbal/menüponttal kapcsolod be/ki? (Nem jó ötlet folyamatosan bekapcsolva hagyni.)
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].
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].
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
Ha makrókkal akarsz dolgozni, akkor az API ismerete elengedhetetlen. Az API-t megismerni viszont nem könnyű. Leírásokból (bár vannak) kifejezetten nehéz.
Ezért javaslom, hogy telepíts egyet a létező Object Inspection Tools-ok közül. Én az XrayTool nevűt használom, de létezik az MRI nevű is. A programozási objektumok létező tulajdonságait, metódusait képes megjeleníteni programfutás közben. Így megtudhatod, például, hogy a g_Cross objektum létezik-e az adott pillanatban (hozzá van-e rendelve a névhez maga az objektum), és hogy annak létezik-e .CellBackColor metódusa.
Ezért javaslom, hogy telepíts egyet a létező Object Inspection Tools-ok közül. Én az XrayTool nevűt használom, de létezik az MRI nevű is. A programozási objektumok létező tulajdonságait, metódusait képes megjeleníteni programfutás közben. Így megtudhatod, például, hogy a g_Cross objektum létezik-e az adott pillanatban (hozzá van-e rendelve a névhez maga az objektum), és hogy annak létezik-e .CellBackColor metódusa.
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].
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].
Re: aktív sor kiemelése
Csatoltam a fájlomat, ami nem működik.
Igazság szerint, nem szeretném ebbe túlzottan beleásni magamat. Nekem a mindennapi dolgaimhoz lenne rá szükségem, de ezen felül, nem használom ilyen mélységekben a táblázatkezelőt.
Minden esetre köszönöm, a gyors és kedves válaszokat!
Igazság szerint, nem szeretném ebbe túlzottan beleásni magamat. Nekem a mindennapi dolgaimhoz lenne rá szükségem, de ezen felül, nem használom ilyen mélységekben a táblázatkezelőt.
Minden esetre köszönöm, a gyors és kedves válaszokat!
- Csatolmányok
-
- test.ods
- (7.29 KiB) Letöltve 209 alkalommal.
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
A test.ods fájlodban egyáltalán nincs semmi makró. Lehet, hogy csak elfelejtetted bemásolni, de feltételezhetem azt is, hogy máshonnan akarod futtatni azokat.
A makrók nem képesek futni egy másik munkafüzetből.
A programcsomag SajátMakrók Standard könyvtárának egy Moduljából vagy a mindenkori aktutális dokumentum Moduljából lehet csak futtatni.
A makrók nem képesek futni egy másik munkafüzetből.
A programcsomag SajátMakrók Standard könyvtárának egy Moduljából vagy a mindenkori aktutális dokumentum Moduljából lehet csak futtatni.
Akkor felejtsd el a makrózást. "Beleásódás" nélkül nem fog menni. Használd azokat a funkciókat, amik rendelkezésre állnak.Igazság szerint, nem szeretném ebbe túlzottan beleásni magamat.
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].
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].
Re: aktív sor kiemelése
A saját makrók könyvtáramból futtatom, azért nem volt a fájlban. Javítottam a dolgot.
- Csatolmányok
-
- test.ods
- (8.81 KiB) Letöltve 200 alkalommal.
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
OK, most benne van a makró. Kiegészítettem a
kapcsolóval. Ez segít futtatni az idegen VBA kódot.
- De mi fogja elindítani a makrót?
Tettem fel egy gombot, amihez hozzárendeltem a makró indítását.
De így se fut, mert:
- Ki, mi (milyen rutin) fogja átadni a rutin nevében jelzett "Target" paramétert a te szubrutinodnak? A LibreOffice az oEv, oEvent névvel is hivatkozható esemény objektumot képes automatikusan átvenni - ha egy bekapcsolt Listener (figyelő) hatására elindul egy makró. De ez az oEv nem egy cellatartomány objektum, hanem esemény-objektum. Abból "kihámozható" ugyan a cellatartomány, ahol az esemény történt, de ahhoz is az API függvények kellenek.
- Mi a "test" objektum? Ki, mi adja meg annak az értékét, tartalmát? Nem hivatkozhatsz valamire úgy, hogy előtte ne mondanád meg, hogy MI AZ...
Ezeken kívül:
- Hol van a munkafüzetedben az "ActiveRow" nevű, névvel rendelkező cellatartomány, amire a makró hivatkozik? A Navigátor nem mutat ilyet, nem létezik. A LibreOffice-ban nem adhatsz meg névvel rendelkező tartományt csakis a sor számával. Teljes referenciát kell használnod:
Egyébként is azt hittem, hogy a "crosshighlight_combined.ods" fájlban levő API+StarBasic rutinokról beszélsz, amikor azt írtad, hogy a feltöltött makró nem fut neked. Mondom még egyszer: A VBA (Excel makró) rutinok kompatibilissé tételével sem, és a LO Starbasic+API megoldásával sem fogsz eredményre jutni programozói tudás nélkül. Mindkettő hosszú tanulási folyamatot igényel, de előbbivel alig van esélye, hogy az hatékonyan működni is fog.
Kód: Egész kijelölése
Option VBAsupport 1
- De mi fogja elindítani a makrót?
Tettem fel egy gombot, amihez hozzárendeltem a makró indítását.
De így se fut, mert:
- Ki, mi (milyen rutin) fogja átadni a rutin nevében jelzett "Target" paramétert a te szubrutinodnak? A LibreOffice az oEv, oEvent névvel is hivatkozható esemény objektumot képes automatikusan átvenni - ha egy bekapcsolt Listener (figyelő) hatására elindul egy makró. De ez az oEv nem egy cellatartomány objektum, hanem esemény-objektum. Abból "kihámozható" ugyan a cellatartomány, ahol az esemény történt, de ahhoz is az API függvények kellenek.
- Mi a "test" objektum? Ki, mi adja meg annak az értékét, tartalmát? Nem hivatkozhatsz valamire úgy, hogy előtte ne mondanád meg, hogy MI AZ...
Ezeken kívül:
- Hol van a munkafüzetedben az "ActiveRow" nevű, névvel rendelkező cellatartomány, amire a makró hivatkozik? A Navigátor nem mutat ilyet, nem létezik. A LibreOffice-ban nem adhatsz meg névvel rendelkező tartományt csakis a sor számával. Teljes referenciát kell használnod:
Kód: Egész kijelölése
A1:AMJ1
Egyébként is azt hittem, hogy a "crosshighlight_combined.ods" fájlban levő API+StarBasic rutinokról beszélsz, amikor azt írtad, hogy a feltöltött makró nem fut neked. Mondom még egyszer: A VBA (Excel makró) rutinok kompatibilissé tételével sem, és a LO Starbasic+API megoldásával sem fogsz eredményre jutni programozói tudás nélkül. Mindkettő hosszú tanulási folyamatot igényel, de előbbivel alig van esélye, hogy az hatékonyan működni is fog.
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].
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].
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
Annyit módosítottam a kódodon, hogy a kívánt cellába belekattintva, és utána a gombot megnyomva az ActiveRow hivatkozása a kijelölt cella sorára frissül. Csak 200 oszlopra csináltam meg, és a kijelölés természetesen eltűnik, ha máshová kattintasz, akár a soron belül is.
Lehet tovább "kínlódni" az inkompatibilis VBA kóddal, hogy ez ne csak gombnyomásra, hanem automatikusan történjen meg azonnal, amikor más sorba kattintasz, de célszerűbb a LO API függvényeivel és a beépített Listener-ekkel megvalósítani, ahogy az a "crosshighlight_combined.ods" fájlban is történik. Ott a gombokkal csak a megírt funkciót kapcsolod be/ki, a kijelölés automatikusan megtörténik minden cellakattintáskor - ha a funkció be van kapcsolva.
Lehet tovább "kínlódni" az inkompatibilis VBA kóddal, hogy ez ne csak gombnyomásra, hanem automatikusan történjen meg azonnal, amikor más sorba kattintasz, de célszerűbb a LO API függvényeivel és a beépített Listener-ekkel megvalósítani, ahogy az a "crosshighlight_combined.ods" fájlban is történik. Ott a gombokkal csak a megírt funkciót kapcsolod be/ki, a kijelölés automatikusan megtörténik minden cellakattintáskor - ha a funkció be van kapcsolva.
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].
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].
Re: aktív sor kiemelése
Köszönöm szépen a segítséget.
Megnézem a VBA verziót, illetve megcsinálom akkor a saját fájlomban a gombot, és hozzárendelem a macrot!
Megnézem a VBA verziót, illetve megcsinálom akkor a saját fájlomban a gombot, és hozzárendelem a macrot!
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n
- Zizi64
- Globális moderátorok
- Hozzászólások: 4034
- Csatlakozott: 2008. november 12., szerda 21:22
- Tartózkodási hely: Budapest
Re: aktív sor kiemelése
Aztán az angol fórumon van "színezgethető" kijelöléssel is megoldás. Az nem a beépített "kijelölés" funkciót és annak fix színét, hanem a Feltételes Formázás funkciót használja. Ott, az alkalmazandó cellastílusban te adhatod meg a kívánt színt. Ez a megoldás néhány oszloppal és 100 sorral is baromi lassú, még több cellával használhatatlanul lassú, és "összeomlós" lesz.
https://forum.openoffice.org/en/forum/v ... =9&t=43531
Töltsd le onnan az utolsó csatolmányt (a focusRowColHighlight.ods fájlt), és próbáld ki.
https://forum.openoffice.org/en/forum/v ... =9&t=43531
Töltsd le onnan az utolsó csatolmányt (a focusRowColHighlight.ods fájlt), és próbáld ki.
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].
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].
Re: aktív sor kiemelése
Köszönöm szépen. Miután kipróbáltam mind a két verziót, végül az Ön által javasolt ki-be kapcsolható megoldást választottam. A másik tényleg borzasztóan lassú. Így végül sikerült megoldani a dolgot.
OpenOffice 6.0.7.3 az Ubuntu 18.04.2-n