Crea intervalli denominati dalle etichette
TDF LibreOffice Document Liberation Project Blog comunitari Weblate Nextcloud Redmine Ask LibreOffice Donazione
Riepilogo
Questa pagina fornisce una procedura macro di LibreOffice Basic che crea intervalli denominati dalle etichette. È un esempio tratto dal Capitolo 13 ("Calc come database") della Guida 7.0 Calc.
Descrizione
Oltre a utilizzare la finestra di dialogo Crea nomi (accessibile selezionando Foglio > Intervalli ed espressioni con nome > Crea nella barra dei menu), gli intervalli con nome possono essere generati dalle etichette utilizzando il metodo macro addNewFromTitles:
- addNewFromTitles(Sorgente, Bordo)
- Crea intervalli denominati dalle intestazioni di colonna o riga. Questo metodo ha due argomenti:
- Sorgente – L'indirizzo dell'intervallo di celle dell'intervallo denominato da creare.
- Bordo – È un valore di enumerazione che specifica la posizione delle etichette di intestazione. Questa enumerazione ha uno dei quattro possibili valori, elencati nella tabella seguente:
Enumeratore | Descrizione |
---|---|
TOP | Selezionate la riga del bordo superiore. |
BOTTOM | Selezionate la riga del bordo inferiore. |
RIGHT | Selezionate la colonna del bordo destro. |
LEFT | Selezionate la colonna del bordo sinistro. |
La macro seguente crea tre intervalli denominati utilizzando le intestazioni della riga superiore dell'intervallo di celle A1:C20. Gli intervalli risultanti verranno elencati nella finestra di dialogo Gestisci nomi, a cui è possibile accedere selezionando Foglio > Intervalli ed espressioni con nome > Gestisci nella barra dei menu o premendo Ctrl+F3.
Codice
Sub AddManyNamedRanges()
Dim oSheet 'Foglio che contiene l'intervallo nominato.
Dim oAddress 'Indirizzo dell'intervallo.
Dim oRanges 'La proprietà NamedRanges.
Dim oRange 'Gamma di celle singole.
oRanges = ThisComponent.NamedRanges
oSheet = ThisComponent.getSheets().getByIndex(0)
oRange = oSheet.getCellRangeByName("A1:C20")
oAddress = oRange.getRangeAddress()
oRanges.addNewFromTitles(oAddress, com.sun.star.sheet.Border.TOP)
End Sub
Questo Foglio di calcolo Calc contiene il codice sovrastante in Basic di LibreOffice.