Ciao Scossa, lieto del tuo intervento.
Premetto che non sono in grado di partecipare alla festa dei numeri perche' purtroppo non sono riuscito a misurare l' improvement che tutti avete testimoniato: non so perche', ma a me la macro byScossa non produce effetti significativi, con durata confrontabile con quella della macro originale.
Vi giro il file su cui ho fatto le prove, e su cui sono disponibili una serie di altre macro, e vi prego di ripetere le vostre prove su questo file.
https://rapidshare.com/files/2807139664 ... 0402-1.xlsIl pulsante presente su Riepilogo consente di eseguire le 5 macro in sequenza, ripristinando di volta in volta i dati iniziali, memorizzando i tempi nell' area L1:U2.
Le colonne usate per il test sono A:F piu' la zona L1:U2 usata per il calcolo dei tempi.
Diciamo subito che mi aspettavo un drastico miglioramento, in quanto Scossa ha colto che il tempo maggiore e' speso per il delete dei singoli range, e intelligentemente hai raggruppato queste operazioni in un unico momento; a maggior ragione non capisco il motivo sul mio pc del mancato miglioramento.
Questo mi impedisce infine di valutare l' impatto dell' uso del Dictionary (invece della Collection; macro DELDUP22); mi aspetterei che questa tecnica sia ancora piu' veloce in quanto usa la proprieta' "Exists" invece della condizione di errore per determinare la presenza della voce. Infatti questa macro nei miei test rimane la piu' veloce, ma con tempi di esecuzione MOLTO piu' alti di quanto risulta a voi e decisamente confrontabili con le altre soluzioni testate.
Saro' lieto di leggere i vostri risultati, spero prima o poi di capire il perche' dei miei problemi di misurazione.
Tuttavia (karug mi perdonera', spero, per quello che vado a dire) il mio obiettivo era di offrire un punto di partenza, che l' utente fosse quindi in grado di metabolizzare e adattare alle sue esigenze; da questo aspetto l' uso della WorksheetFunction.CountIf penso sia piu' semplice della New collection e del Dictionary.
A Ricky (forse) anche io avrei proposto una cosa piu' sofisticata ("forse" e' dubitativo della mia capacita' creativa, non della capacita' di Ricky di metabolizzare...)
Grazie ancora per l' intervento.
Ciao a tutti