[it-users] problemino con una macro

classic Classic list List threaded Threaded
7 messages Options
Ferrari Renato Maria Ferrari Renato Maria
Reply | Threaded
Open this post in threaded view
|

[it-users] problemino con una macro

Mi sto dilettando a scrivere una piccola macro per due fogli
elettronici, e mi sono
imbattuto in un piccolissimo problema: all'apertura del file vorrei che
comparisse l'ultimo foglio
del documento, non l'ultimo aperto dopo la chiusura del documento.

pensavo che questo comando:

ThisComponent.Sheets.getByIndex(nfoglio)

dove nfoglio è una variabile=ThisComponent.Sheets.Count-1

facesse al mio caso, ma non è così.

Grazie

--
I miei dati:
Ferrari Renato Maria
email: [hidden email]
--
Linux Registered User #219791
Linux Registered Machine #104061
[hidden email]


--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
Meloni Matteo Meloni Matteo
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

In data 10 dicembre 2014 alle ore 19:20:10, [hidden email]  
<[hidden email]> ha scritto:

> Mi sto dilettando a scrivere una piccola macro per due fogli  
> elettronici, e mi sono
> imbattuto in un piccolissimo problema: all'apertura del file vorrei che  
> comparisse l'ultimo foglio
> del documento, non l'ultimo aperto dopo la chiusura del documento.
>
> pensavo che questo comando:
>
> ThisComponent.Sheets.getByIndex(nfoglio)
>
> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>
> facesse al mio caso, ma non è così.
>
> Grazie
>

Ciao io so come fare, ma devi specificare il numero del foglio, ecco la  
macro che uso io per spostarmi nei fogli, in questo caso si va a finire  
sul foglio n. 5.
Spero di esserti stato di aiuto.

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 5

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



Creato con il client email di Opera: http://www.opera.com/mail/

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
Alberto Benedetto Alberto Benedetto
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

Ciao,
non so se ho capito bene il problema.
Al di la del metodo da utilizzare per la selezione del foglio ("ThisComponent.Sheet" etc. oppure "dispatcher.executeDispatch"), devi poi associare la macro all'evento di apertura del documento, altrimenti l'esecuzione avviene solo su tua richiesta.
A che "livello" è il problema? Composizione della macro oppure esecuzione automatica?

Alberto

----- Messaggio originale -----
Da: "Meloni Matteo" <[hidden email]>
A: "LibreOffice" <[hidden email]>, [hidden email]
Inviato: Mercoledì, 10 dicembre 2014 20:56:22
Oggetto: Re: [it-users] problemino con una macro

In data 10 dicembre 2014 alle ore 19:20:10, [hidden email]  
<[hidden email]> ha scritto:

> Mi sto dilettando a scrivere una piccola macro per due fogli  
> elettronici, e mi sono
> imbattuto in un piccolissimo problema: all'apertura del file vorrei che  
> comparisse l'ultimo foglio
> del documento, non l'ultimo aperto dopo la chiusura del documento.
>
> pensavo che questo comando:
>
> ThisComponent.Sheets.getByIndex(nfoglio)
>
> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>
> facesse al mio caso, ma non è così.
>
> Grazie
>

Ciao io so come fare, ma devi specificare il numero del foglio, ecco la  
macro che uso io per spostarmi nei fogli, in questo caso si va a finire  
sul foglio n. 5.
Spero di esserti stato di aiuto.

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 5

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



Creato con il client email di Opera: http://www.opera.com/mail/

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
Giuseppe Vizziello Giuseppe Vizziello
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

In reply to this post by Ferrari Renato Maria
La tua è corretta, ma devi completare con un .Select(qualcosa)

- versione sotf:

oSheets = ThisComponent.Sheets
idSheet = oSheets.Count
oSheet = oSheets.getByIndex(idSheet-1)
ThisComponent.CurrentController.Select(oSheet.GetCellByPosition(0,0))


- versione hard (su unica riga, ma giusto per giocare...):

ThisComponent.CurrentController.Select(ThisComponent.Sheets.getByIndex(ThisComponent.Sheets.Count-1).GetCellByPosition(0,0))


Ciao

On 10/12/2014 19.20, [hidden email] wrote:

> Mi sto dilettando a scrivere una piccola macro per due fogli
> elettronici, e mi sono imbattuto in un piccolissimo problema:
> all'apertura del file vorrei che comparisse l'ultimo foglio del
> documento, non l'ultimo aperto dopo la chiusura del documento.
>
> pensavo che questo comando:
>
> ThisComponent.Sheets.getByIndex(nfoglio)
>
> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>
> facesse al mio caso, ma non è così.
>
> Grazie
>


--
Giuseppe Vizziello
http://www.giuSerpe.it - skype: giuserpe
http://leeno.org
LeenO - computo metrico assistito su LibreOffice/OpenOffice

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
joevizz@tiscali.it joevizz@tiscali.it
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

In reply to this post by Ferrari Renato Maria

On 10/12/2014 19:20, [hidden email] wrote:

> Mi sto dilettando a scrivere una piccola macro per due fogli
> elettronici, e mi sono
> imbattuto in un piccolissimo problema: all'apertura del file vorrei
> che comparisse l'ultimo foglio
> del documento, non l'ultimo aperto dopo la chiusura del documento.
>
> pensavo che questo comando:
>
> ThisComponent.Sheets.getByIndex(nfoglio)
>
> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>
> facesse al mio caso, ma non è così.
>
> Grazie
>
Io uso spesso insieme sia
http://www.brescianet.com/appunti/vari/script/manuali/VbaStarOffice_ITA.pdf

che la raccolta di macro di Pytoniak, molto ben organizzata e
commentata. La trovi assieme a parecchio altro materiale su
juhuj.com/open-file-odt-convert-odt-download-pitonyak.htm

Ma francamente, se non hai esigente specifiche che richiedano Basic, ti
consiglierei di valutare Phyton.
Anzi... non lo valutare, usalo. E' molto versatile e te lo ritrovi
dappertutto, per cui ti torna utile anche per molte altre cose.

Ciao

--
Giuseppe Vizziello http://www.giuSerpe.it
- skype: giuserpe http://leeno.org LeenO
- computo metrico assistito su LibreOffice/OpenOffice

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
beppe cantanna beppe cantanna
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

@[hidden email]
Ciao,
ho trovato questo vecchia mail per la selezione automatica dell'ultimo
foglio in calc. e che termina con il suggerimento di consultare della
documentazione.

Mi chiedevo se poi hai risolto?



Saluti BC

2014-12-13 19:33 GMT+01:00 [hidden email] <[hidden email]>:

>
> On 10/12/2014 19:20, [hidden email] wrote:
>
>> Mi sto dilettando a scrivere una piccola macro per due fogli elettronici,
>> e mi sono
>> imbattuto in un piccolissimo problema: all'apertura del file vorrei che
>> comparisse l'ultimo foglio
>> del documento, non l'ultimo aperto dopo la chiusura del documento.
>>
>> pensavo che questo comando:
>>
>> ThisComponent.Sheets.getByIndex(nfoglio)
>>
>> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>>
>> facesse al mio caso, ma non è così.
>>
>> Grazie
>>
>>  Io uso spesso insieme sia
> http://www.brescianet.com/appunti/vari/script/manuali/VbaStarOffice_ITA.pdf
>
> che la raccolta di macro di Pytoniak, molto ben organizzata e commentata.
> La trovi assieme a parecchio altro materiale su
> juhuj.com/open-file-odt-convert-odt-download-pitonyak.htm
>
> Ma francamente, se non hai esigente specifiche che richiedano Basic, ti
> consiglierei di valutare Phyton.
> Anzi... non lo valutare, usalo. E' molto versatile e te lo ritrovi
> dappertutto, per cui ti torna utile anche per molte altre cose.
>
> Ciao
>
> --
> Giuseppe Vizziello http://www.giuSerpe.it
> - skype: giuserpe http://leeno.org LeenO
> - computo metrico assistito su LibreOffice/OpenOffice
>
> --
> 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/Local_Mailing_Lists/it
> Archivio della lista: http://listarchives.libreoffice.org/it/users/
> Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e
> non sono eliminabili
>



--
*CANTANNA Giuseppe*
[hidden email]
[hidden email]
[hidden email]
[hidden email]

BepOS - Linux user n. 502620 registered on http://counter.li.org/


*Per favore non inviatemi allegati in formato MS
Office.​​Utilizza​te​ alternativamente documenti in formato OpenDocument.*

http://en.wikipedia.org/wiki/OpenDocument
​ ​
http://it.wikipedia.org/wiki/OpenDocument


*​*http://www.documentfoundation.org/
* ​ *https://it.libreoffice.org/
​ ​

--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili
Ferrari Renato Maria Ferrari Renato Maria
Reply | Threaded
Open this post in threaded view
|

Re: [it-users] problemino con una macro

sì, trascrivo il pezzo di codice relativo:

GlobalScope.BasicLibraries.LoadLibrary("Tools")
ThisComponent.CurrentController.Select(ThisComponent.Sheets.getByIndex(ThisComponent.Sheets.Count-1).GetCellByPosition(0,0))



Il 23/05/2015 23:00, Beppe Cantanna ha scritto:

> @[hidden email]
> Ciao,
> ho trovato questo vecchia mail per la selezione automatica dell'ultimo
> foglio in calc. e che termina con il suggerimento di consultare della
> documentazione.
>
> Mi chiedevo se poi hai risolto?
>
>
>
> Saluti BC
>
> 2014-12-13 19:33 GMT+01:00 [hidden email] <[hidden email]>:
>
>> On 10/12/2014 19:20, [hidden email] wrote:
>>
>>> Mi sto dilettando a scrivere una piccola macro per due fogli elettronici,
>>> e mi sono
>>> imbattuto in un piccolissimo problema: all'apertura del file vorrei che
>>> comparisse l'ultimo foglio
>>> del documento, non l'ultimo aperto dopo la chiusura del documento.
>>>
>>> pensavo che questo comando:
>>>
>>> ThisComponent.Sheets.getByIndex(nfoglio)
>>>
>>> dove nfoglio è una variabile=ThisComponent.Sheets.Count-1
>>>
>>> facesse al mio caso, ma non è così.
>>>
>>> Grazie
>>>
>>>   Io uso spesso insieme sia
>> http://www.brescianet.com/appunti/vari/script/manuali/VbaStarOffice_ITA.pdf
>>
>> che la raccolta di macro di Pytoniak, molto ben organizzata e commentata.
>> La trovi assieme a parecchio altro materiale su
>> juhuj.com/open-file-odt-convert-odt-download-pitonyak.htm
>>
>> Ma francamente, se non hai esigente specifiche che richiedano Basic, ti
>> consiglierei di valutare Phyton.
>> Anzi... non lo valutare, usalo. E' molto versatile e te lo ritrovi
>> dappertutto, per cui ti torna utile anche per molte altre cose.
>>
>> Ciao
>>
>> --
>> Giuseppe Vizziello http://www.giuSerpe.it
>> - skype: giuserpe http://leeno.org LeenO
>> - computo metrico assistito su LibreOffice/OpenOffice
>>
>> --
>> 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/Local_Mailing_Lists/it
>> Archivio della lista: http://listarchives.libreoffice.org/it/users/
>> Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e
>> non sono eliminabili
>>
>
>


--

Ferrari Renato Maria
Linux Registered User #219791
Linux Registered Machine #104061
[hidden email]


--
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/Local_Mailing_Lists/it
Archivio della lista: http://listarchives.libreoffice.org/it/users/
Tutti i messaggi inviati a questa lista vengono archiviati pubblicamente e non sono eliminabili