Crea intervalli denominati dalle etichette
TDF LibreOffice Blog comunitari Weblate(traduci) Autori 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.