Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra?

Szövegszerkesztő
fat spider
Önkéntesek
Hozzászólások: 223
Csatlakozott: 2010. május 17., hétfő 14:15
Tartózkodási hely: Debrecen

Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra?

Hozzászólás Szerző: fat spider »

Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra? (Mert a rögzítéskor elmentett fájlnévvel menti el a későbbieket is...:-((

zizi64: Új kérdés -> ÚJ TÉMA!
ezt már megjegyezhetted volna!
Win 10, LibO verzió: 7.2.0.4 (x64)
fat spider
Önkéntesek
Hozzászólások: 223
Csatlakozott: 2010. május 17., hétfő 14:15
Tartózkodási hely: Debrecen

Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra?

Hozzászólás Szerző: fat spider »

fat spider írta:Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra? (Mert a rögzítéskor elmentett fájlnévvel menti el a későbbieket is...:-((
Megtaláltam a választ a súgóban? :-(

"A következő műveletek nincsenek rögzítve:
Az ablakok megnyitása nincs rögzítve.
Azok a műveletek, amelyeket nem abban az ablakban végeznek, amelyben a makrórögzítőt elindították.
Az ablakok váltása nincs rögzítve.
A nem a dokumentum tartalmára vonatkozó műveletek nincsenek rögzítve. Például a Beállítások párbeszédablakban, a makrószervezőben vagy a testreszabásban végzett módosítások.
A kijelölések csak akkor vannak rögzítve, ha a billentyűzettel történnek (a kurzor mozog), de az egérrel történt kijelölések nem.
A makrórögzítő csak a Calc és a Writer programban működik."

Ötlet..?
Win 10, LibO verzió: 7.2.0.4 (x64)
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4106
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra?

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

(Az alábbiak a LibreOffice-ra is érvényesek!)

Ha az OpenOffice-t hatékonyan szeretnéd a saját programoddal vezérelni, akkor meg kell tanulnod a beépített programnyelvek egyikét (OOBasic, Python, BeanShell, JavaScript) és tanulmányoznod kell a programozáshoz, vezérléshez alapvetően szükséges OpenOffice API függvényeket!
Az OpenOffice-n belül az API biztosítja azt a felületet, amin keresztül egy másik program (legyen az bármilyen programnyelven írva) meg tudja szólítani az OpenOffice-t - kérdezni tud tőle, és vezérelni tudja az API függvényeken keresztül.
A beépített programnyelvek nyelvek programkódja az OpenOffice-on belül tárolódik és az OpenOffice gondoskodik a futtatásukról is. De megteheted, hogy egy teljesen az Office programon "kívül" futó másik programmal vezérled az OpenOffice-t (C, C++, Pascal, Java, stb. nyelveken megírt programokról van itt szó.)

A Makrórögzítővel csak nagyon korlátozottan lehet "programot írni"! Komolyabb feladat esetén nem mész vele semmire!

Tessék nekilátni a tanulásnak!
http://wiki.services.openoffice.org/wik ... _%28API%29
http://wiki.services.openoffice.org/wik ... e/Language

A konkrét feladathoz:

A megvalósításhoz valószínűleg a kimeneti szűrőt kell vezérelned a programoddal.

Van olyan kiterjesztés (talán Multisave a neve), amely egy kattintással kb 4. féle formátumba menti az aktuális dokumentumot. (odt, txt, doc, rtf) egyszer elmented odt-ben aztán ha futtatod a kiterjesztést, akkor a normál mentésen kívül csinál egy zip fájlt, ami tartalmazza a másik három formátumba mentett dokumentumot. Maga a továbbszerkesztés továbbra is odt-ben fog történni.
Kovács Tibor, W11/10/7x64Pro, Linux: 7.5.8-25.x.y.z
PortableApps: LO, AOO: időlegesen feldobva, ha nagyon kell...
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].
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4106
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra

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

Egyébként a Makrófelvevővel az alábbi makrót tudtam rögzíteni (természetesen a rögzítés alatt a MENÜPONTOKAT használtam, nem a gyorsbillentyűket, sőt nem is az ikonokat!:

Kód: Egész kijelölése

sub SaveAsDoc
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:///E:/Dokumentumok/Zizi_munka/OOo_F%C3%B3rum/Proba.doc"
args1(1).Name = "FilterName"
args1(1).Value = "MS Word 97"

dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())


end sub
Természetesen a futtatása után már doc formátumban történik a továbbszerkesztés!
A fix fájlnév helyett használhatod az OOBasic Inputbox-át a fájlnév bevitelére, megadására (lásd: OOBasic súgó).
Vagy API függvénnyel lekérdezheted a mentendő aktuális fájl URL-jét, és azt módosíthatod a programoddal, ha szükséges.
Kovács Tibor, W11/10/7x64Pro, Linux: 7.5.8-25.x.y.z
PortableApps: LO, AOO: időlegesen feldobva, ha nagyon kell...
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].
fat spider
Önkéntesek
Hozzászólások: 223
Csatlakozott: 2010. május 17., hétfő 14:15
Tartózkodási hely: Debrecen

Re: Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra

Hozzászólás Szerző: fat spider »

Zizi64 írta:Egyébként a Makrófelvevővel az alábbi makrót tudtam rögzíteni (természetesen a rögzítés alatt a MENÜPONTOKAT használtam, nem a gyorsbillentyűket, sőt nem is az ikonokat!:

Kód: Egész kijelölése

sub SaveAsDoc
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:///E:/Dokumentumok/Zizi_munka/OOo_F%C3%B3rum/Proba.doc"
args1(1).Name = "FilterName"
args1(1).Value = "MS Word 97"

dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())


end sub
Természetesen a futtatása után már doc formátumban történik a továbbszerkesztés!
A fix fájlnév helyett használhatod az OOBasic Inputbox-át a fájlnév bevitelére, megadására (lásd: OOBasic súgó).
Vagy API függvénnyel lekérdezheted a mentendő aktuális fájl URL-jét, és azt módosíthatod a programoddal, ha szükséges.
Kedves Zizi64!

nagyon hasznos hozzászólás, sokat segítettél! :-)

Biztos ami biztos, letöltöttem a Multisave kiterjesztést, feltettem és nagyon hasznos!

Nézem a javasolt oldalakat is, de azok nem azonnali megoldások...! :-))

Nagyon köszönöm a hasznos válaszodat!

Sokat segített!
Win 10, LibO verzió: 7.2.0.4 (x64)
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4106
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra

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

Kedves Kövér Pók!
Nézem a javasolt oldalakat is, de azok nem azonnali megoldások...! :-))
"Instant tudáspor" nem létezik! Ha nem fektetsz munkát, időt bele; nem tanulod meg a dolgokat, később nagyon visszaüthet! ...Egyszer még én is megunom a folytonos, minden saját kutakodást, próbálkozást mellőző kérdéseidet!
Kovács Tibor, W11/10/7x64Pro, Linux: 7.5.8-25.x.y.z
PortableApps: LO, AOO: időlegesen feldobva, ha nagyon kell...
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].
fat spider
Önkéntesek
Hozzászólások: 223
Csatlakozott: 2010. május 17., hétfő 14:15
Tartózkodási hely: Debrecen

Re: Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra

Hozzászólás Szerző: fat spider »

Zizi64 írta:Kedves Kövér Pók!
Nézem a javasolt oldalakat is, de azok nem azonnali megoldások...! :-))
"Instant tudáspor" nem létezik! Ha nem fektetsz munkát, időt bele; nem tanulod meg a dolgokat, később nagyon visszaüthet! ...Egyszer még én is megunom a folytonos, minden saját kutakodást, próbálkozást mellőző kérdéseidet!

Tudom, hogy nincs "Instant tudáspor"!

Ezért minden alkalommal köszönöm a segítségedet, igyekszem sokat tanulni belőlük és bízom abban, hogy ez a fórum arra való, hogy segítsenek azok, akik többet tudnak, előbbre járnak. Minden válasz saját elhatározás, és nagyon tisztelem azokat, akik segítenek nekem, akik a tudás eleganciájával támogatják botladozó lépéseimet ebben a világban. Nagyon sokat tanultam a válaszokból és attól függetlenül, hogy sokat kérdezek, sokat olvasok a problémáim után! (Ha ez nem jön le azonnal, azért elnézést..:-) Ha nem kérdeznék (olykor kezdőnek beillő kérdést...), akkor nem lenne szükség fórumra....:-)

Bízom abban, hogy a kérdéseim hasznosak mindazoknak, akik nem mernek kérdezni csak olvassák a fórumot és a Ti válaszaitok sok fórumtársunknak ad irányt, ötletet és konkrét megoldást.


Az eddigi segítségedet és a jövőbeni válaszaidat is nagyon köszönöm, remélem, egyre kevesebbet kell és fogok kérdezni! :-)
(Bár, ahogy egyre többet tudok a programról, rájövök, mennyi mindent nem tudok még a programról...:-)

Teljesen egyetértek Veled, sokkal több időt kellene a javasolt oldalakon lennem, de tudom, nem leszek már (koromnál fogva sem) programozó, ugyanakkor érdeklődő amatőr vagyok...Aki most fedezi fel a program lehetőségeit...:-)


Száz szónak is egy a vége, KÖSZÖNÖM a segítő válaszaidat a magam és a többi olvasó fórumtársam nevében is! :bravo: :bravo:
Win 10, LibO verzió: 7.2.0.4 (x64)
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4106
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Hogy lehet makróval átalakíttatni egy .odt fájlt .doc-ra

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

(Bár, ahogy egyre többet tudok a programról, rájövök, mennyi mindent nem tudok még a programról...
No, ezzel én is így vagyok!
Kovács Tibor, W11/10/7x64Pro, Linux: 7.5.8-25.x.y.z
PortableApps: LO, AOO: időlegesen feldobva, ha nagyon kell...
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