Alle 15:56, domenica 26 marzo 2006, Bart Aimar ha scritto:
[...]
> Un certo timore c'è... ma se insisti :-)
> eccoti il codice:
>
> sub Elimina_Tutti_NomiArea
>       oDoc = ThisComponent
>       oAree=oDoc.NamedRanges'
>
>        For i = 0 to oAree.getCount() - 1
>                       oNomiArea = oAree.ElementNames(n)
>                       oAree. RemoveByName(oNomiArea)
>       next
> End Sub


Incredibile !! :-)
Il codice funziona solo per un caso fortuito.
Infatti contiene due errori gravi che presi singolarmente ne impedirebbero il 
funzionamento, ma, combinati assieme causano il funzionamento della macro.

a Ferrara in questi casi si dice... 

...beh, magari te lo dico in un altra occasione :-)


>
> > Inoltre occorre mettere i tuoi interlocutori in condizione di fare delle
> > verifiche in condizioni predeterminate.
>
> In questo caso l'unico modo per fare delle verifiche sarebbe quello di
> usare un mio file... perchè sembrano quelli che danno problemi.
> Si tratta di computi metrici in excel (versione vba di Ultimus) da
> trasferire su UltimusFree per OO.

No il problema non è nei tuoi files ma nel numero di formule contenenti 
riferimenti ad aree con nome.

>
> > Sappi che nel mio pc occorre circa un ventesimo di secondo per eliminare
> > 15 named ranges, quindi come faccio a riprodurre il problema????
>
> Vediamo se dipende dal metodo (forse ne usi uno diverso) o dai documenti 
> su cui si applica la macro...

Dipende certamente dai documenti, infatti ti ho chiesto come fare per 
riprodurre il problema...


[...]
> Paolo, gradiresti provare a cancellare i namedranges direttamente dal
> mio file?

Non serve un tuo file!
Visto che non mi dici tu come riprodurre il problema me lo dirò da solo (però 
questo faceva parte dei tuoi compiti a casa :-)

è sufficiente creare un file vuoto, assegnare uno o due nomi ad altrettante 
celle (es "eta" e "beta") e poi scrivere una formula che contenga riferimenti 
a queste aree con nome, es: =eta+beta

Fatto ciò è sufficiente trascinare la formula in giro per tutto il foglio in 
modo da crearne qualche centinaio di copie.

Eliminando un'area con nome, anche manualmente (dal dialogo 
inserisci->nomi->definisci...) si potrà verificare il lungo tempo necessario 
all'aggiornamento.

Inibire il calcolo automatico non risolve il problema.
Anche bloccare il controller durante l'operazione non è servito:

Spero di essere smentito ma a mio avviso non ci sono soluzioni di nessun tipo.

Ti conviene cercare altre vie per fare quello che devi fare.
Forse non è indispensabile eliminare i nomi, magari si può operare in altro 
modo.


saluti
Paolo

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

Rispondere a