ok! ci sono riuscito. partendo dal vostro prezioso listato iniziale ho poi capito (cercando in rete) che in effetti trattandosi di un dato Stringa il comando corretto é destName = CellRange.GetCellByPosition(0,i).*getstring() */altrimenti /destName/ restituisce giustamente 0 (zero)/
eccovi il nostro listato definitivo, splendidamente funzionante con Oo2:

   Sub Creazione_Tabelle
       Dim oSheets
       Dim i As Integer

           oSheets = ThisComponent.Sheets
           oSheet = oSheets.getbyname("Elenco")

           tabBase="BASE"

       CellRange = oSheet.getCellRangeByName("A1:A100")
n = CellRange.computeFunction(com.sun.star.sheet.GeneralFunction.COUNT)

           for i = 0 to n-1
               destName = CellRange.GetCellByPosition(0,i).getstring()
               oSheets.copyByName(tabBase, destName,i)
           next i

   end sub

N.B.: nonostante il numero delle righe compilate nella colonna A della Tabella "Elenco" possono variare e io vado a selezionare come range comunque sempre 100 righe, la macro funziona perfettamente generando solamente tante tabelle quante sono le righe compilate (cioé non vuote).

grazie a tutti ancora. alla prossima!!
--enrico


Marco Caresia ha scritto:

Paolo Mantovani wrote:

  destName = CellRange.GetCellByPosition(0,i).getvalue()



a mio avviso è più sicuro usare getString() invece di getValue() (più adatto ai valori numerici)


Ottimo Paolo!
In effetti il test l'avevo fatto con dei valori numerici, accidenti a me ;)

Ho la sensazione che una domanda simile fosse già passata in lista, ma non sono riuscito a trovarla...

Ciao,


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Rispondere a