Ciao,

Vi chiedo sin d' ora scusa per quanto segue ma...avendo bisogno di
aggiornare dinamicamente alcuni grafici con l' inserimento di nuovi valori e
l' esclusione dei piu' vecchi e non essendo cio'  supportato nativamente da
Calc (non sono ammessi ne' i nomi ne' le formule per i Data Ranges) ho
risolto come segue dopo un po' di ricerche sull' oooforum:

REM migliora il nome della subroutine
sub aggiornaRangeGrafico
    oSheet=ThisComponent.getSheets().getByName("NomeFoglio")
    oChart=oSheet.getCharts().getByIndex("IndiceGrafico")
    Dim newRange(0) As new com.sun.star.table.CellRangeAddress
    REM se oSheet e' caricato ByIndex si puo' usare quel medesimo valore qui
sotto
    newRange(0).Sheet=oSheet.getRangeAddress().Sheet()
    newRange(0).StartColumn="Nuova colonna d' inizio range"
    newRange(0).StartRow="Nuova riga d' inizio range"
    newRange(0).EndColumn="Nuova colonna di fine range"
    newRange(0).EndRow="nuova riga di fine range"
    oChart.setRanges(newRange)
end sub

ovviamnete non e' una soluzione adatta a tutti (basti pensare che taluni
grafici possono avere piu' di un range quindi l' array va dimensionato
opportunamente) ma e' uno spunto

Spero Vi sia utile...ciao :)

Rispondere a