Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


Ciao,
fenomeni dell' informatica.
____________________STAVO SCRIVENDO QUESTO
Ciao,
non pensare che non c' ho provato. c' ho provato e molto.
All' esecuzione della Macro, ottengo l' errore:
_______________________
sono tornato sulla macro per copiare l' errore e potertelo spedire. Invece
tutto funziona.
Dire che sono sorpreso...è un eufemismo...perchè sono incavolato! C' ho
messo fino alle 11 per capire quale fosse il problema...
Ma ora sono felice :-)
tutto funziona
ho asegnato le varie macro a tasti funzione (che poi è la ragione del fare
una macro)
eposso così iniziare a compilare il mio foglio.
Mi rimane solo un ultima cosa:
una volta eseguita una macro, posso spostare il focus dall' attuale Colonna
(credo .cellAddress.Column) a .cellAddress.Column + 1?
Questa è una "rifinitura" :-)

Grazie ancora

Renato

Il giorno mer 5 lug 2017 alle ore 00:58 beppe <gitrec@tin.it> ha scritto:

Il 03/07/2017 11:50, Renato Pontefice ha scritto:

Ciao Beppe,
...

alla fine del compito (scivere nella cella in cui mi trovo un termine o l'
orario)

vorrei che il focus sia nella cella adiacente (cioè stessa riga, ma
colonna +1)

al momento queste istruzioni
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$D$11"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())

dicono di spostarsi sempre alla cella D11

invece come posso dirgli:

spostati nella stessa riga,ma di una colonna in più

Mi sono spiegato?

Grazie ancora

Renato

Come prima cosa dobbiamo acquisire il valore della cella corrente:

Sub Cella_attiva
  Dim colonna,riga,cella,valore
  rem data + orario corrente
  valore=Now()
  rem data corrente
  rem valore=date
  rem valore numerico
  rem valore=15
  colonna = ThisComponent.getCurrentSelection.CellAddress.Column
  riga    = ThisComponent.getCurrentSelection.CellAddress.Row
  print "cella corrente - colonna: "+colonna, " - riga: "+riga
  ThisComponent.Sheets.getByIndex( 0 ).GetCellByPosition( colonna+1, riga
).SetValue(valore)
  Print "scritto in: "+ chr(65+colonna+1) + (riga+1) + " valore: " + valore
End Sub

le righe con print le puoi commentare con rem e non si stampano
la cella A1 e' la colonna=0 e la riga=0

le  celle nelle quali vuoi inserire la data o l'ora prima formattale come
data o come orario

qui c'e' tutta la documentazione che pero' non so sfruttare:

http://api.libreoffice.org/docs/idl/ref/servicecom_1_1sun_1_1star_1_1sheet_1_1Spreadsheet.html
http://api.libreoffice.org/docs/idl/ref/namespacecom_1_1sun_1_1star.html

ciao
Beppe

--
le nuvole non hanno regole,
perchè non hanno mai rinunciato
alla libertà di sognare.



-- 
Come cancellarsi: E-mail users+unsubscribe@it.libreoffice.org
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

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.