ciao,
prima del quesito vorrei ringraziare Antony in particolare e tutti gli altri che sempre sono stati disponibili ad aiutarmi.
Per una serie di casi della vita non usai mai le applicazioni office in modo " profondo " da qualche anno a questa parte sono parte integrante delle mie attività.
Solo grazie a questo forum ho avuto le dritte, e i suggerimenti giusti da seguire per essere profittevole nel mio lavoro.
Fino a qualche anno fa nemmeno sapevo scrivere cells(1,1) = " hello Pc-Facile Forum ", oggi integro Python, Excel, Outlook, SQL in soluzioni complesse.
GRAZIE.
Nonostante questo a volte mi trovo di fronte a problemi che risolvo in modo " rozzo " , quando son sicuro ch esistono modi più " puri " ed efficienti.
Esempio di ieri, ho un elenco di numeri da 1 a 10, ordinati in modo casuale ( 1,3,5,2,7,9,10 ) - ne possono mancare alcuni, ma non possono ripetersi.
Ad ognuno di questi numeri è associata un operazione.
Devo estrarre il numero "1" dalla sequenza e copiarlo su un altro foglio, poi il 2, poi il 3 e cosi via.
Devo mantenere il primo foglio e crearne un altro con le righe ordinate.
Ho risolto cosi ( e non ridete, so che è incasinato, ma al volo non ho trovato nulla di meglio )
Creo una copia del foglio, e applico un ciclo while di "taglia" , "inserisci", "incolla", fino a che la condizione "ordinato dal più piccolo al più grande è soddisfatta ".
Posso avere massimo 12 righe da ordinare, ed è soddisfacentemente veloce, ma non è la soluzione ottimale.
Avevo pensato anche ad un :
- inserisci nuovo foglio,
- prendi il valore minore del primo foglio e copialo
- cerca il valore successivo al minore del primo foglio e copialo
- e cosi via fino ad esaurimento
ma il fatto che potesse saltare da 1 a 4, mi costringeva a cerca il numero successivo per tentative, aggiungendo " +1" ogni volta
i.e. ho trovato uno---- cerca due, se non lo trovi cerca tre, se non lo trovi cerca quattro ....... fino alla fine delle righe in cui cercare.
Avevo pensato anche, ma non ho ancora testato, di inserire i valori in un array, riordinare quello, e ricopiare il foglio usando l'array come indice di ordinamento, ma non ho ancora provato.
Che dite come lo risolvereste?
ciao
Marco