[it-users] semplice macro calc

classic Classic list List threaded Threaded
2 messages Options
admin lewis admin lewis
Reply | Threaded
Open this post in threaded view
|

[it-users] semplice macro calc

Ciao,
vorrei fare una macro con una combinazione di tasti che mi faccia
taglia/incolla del contenuto di una cella e verso 2 celle più a destra
e una in alto. Dopodichè il cursore deve tornare alla posizione
originale.
Esempio:
"testo 1 cella"
"testo 2 cella"
devo spostare "testo 2 cella" sulla stessa riga della prima cella ma 2
colonne più a destra.
ciao
e grazie
luigi


--
Linux Server, Microsoft Windows 2003/2008 Server, Exchange 2007
http://predellino.blogspot.com/

--
Come cancellarsi: E-mail [hidden email]
Problemi? http://it.libreoffice.org/supporto/mailing-lists/come-cancellarsi/
Linee guida per postare + altro: http://wiki.documentfoundation.org/Netiquette
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
giuseppe@iclam.191.it giuseppe@iclam.191.it
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] semplice macro calc

Il 05/04/2012 13.14, admin lewis ha scritto:

> Ciao,
> vorrei fare una macro con una combinazione di tasti che mi faccia
> taglia/incolla del contenuto di una cella e verso 2 celle più a destra
> e una in alto. Dopodichè il cursore deve tornare alla posizione
> originale.
> Esempio:
> "testo 1 cella"
> "testo 2 cella"
> devo spostare "testo 2 cella" sulla stessa riga della prima cella ma 2
> colonne più a destra.
> ciao
> e grazie
> luigi
>
>
Questa macro si puo' fare semplicemente usando il registratore di macro con
Strumenti->macro->registra_macro

se hai selezionato prima in
Strumenti->Opzioni->Generale->Abilita_le_funzionalita_sperimentali
e qui sotto c'e' il risultato.

ciao
Beppe


REM  *****  BASIC  *****
sub Main
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 -- uso ctrl+x
dispatcher.executeDispatch(document, ".uno:Cut", "", 0, Array())

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "By"
args2(0).Value = 1
args2(1).Name = "Sel"
args2(1).Value = false
rem -- il cursore si sposta a dx di una cella
dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "By"
args3(0).Value = 1
args3(1).Name = "Sel"
args3(1).Value = false
rem -- il cursore si sposta a dx di una cella
dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args3())

rem -- il cursore si sposta in alto di una cella
dim args4(1) as new com.sun.star.beans.PropertyValue
args4(0).Name = "By"
args4(0).Value = 1
args4(1).Name = "Sel"
args4(1).Value = false

dispatcher.executeDispatch(document, ".uno:GoUp", "", 0, args4())

rem -- incolla la cella cancellata
dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())

end sub



--
Come cancellarsi: E-mail [hidden email]
Problemi? http://it.libreoffice.org/supporto/mailing-lists/come-cancellarsi/
Linee guida per postare + altro: http://wiki.documentfoundation.org/Netiquette
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili