Dopo aver creato una macro in Libreoffice (Lezione 1) impariamo il codice necessario per leggere e scrivere  il valore di una cella.

All’interno del menu Macro (Strumenti –> Macro –> Organizza Macro –> Libreoffice Basic) selezionare il Modulo (1), la Macro da modificare (2) e cliccare su Modifica (3)

macro1
Figura 1

Per poter leggere o scrivere il valore di una cella una cella è necessario utilizzare il seguente codice per puntare correttamente il valore di una cella

ThisComponent.Sheets(0).getCellByPosition(Colonne, Righe).Value

Le varie parti del codice hanno i seguenti significati:

ThisComponent = Si comunica di far riferimento al progetto su cui è stato scritto il codice

Sheets(0) = Indicare il foglio all’interno del progetto, sono numerati in ordine incominciando da 0 da sinistra a destra (fare attenzione quando si inserisce un foglio in mezzo ad altri perché la numerazione verrà modificata)

getCellByPosition(Colonne, Righe) = Indicare la cella da raggiungere in base alla posizione numerica di Colonne e righe partendo da 0, Es. E7 = (4,6)

Value = Tra tutte le caratteristiche della cella estrarne solo il valore numerico

Esempio di codice che copia il valore da una cella all’interno di un’altra un’altra aggiungendo 2

Sub Main

   Calcoli = ThisComponent.Sheets(0)

   Valore = Calcoli.getCellByPosition(4, 5).Value

   Calcoli.getCellByPosition(4, 6).Value = Valore + 2

End Sub

NB.
Per comodità si può spezzare l’indirizzamento della cella in più parti mediante l’utilizzo di variabili di appoggio

Qui come appare il codice all’interno dell’IDE di Libreoffice

macro2
Figura 2

Torna alla Lezione 1 – Creare una Macro