Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

EXCEL2007 estrarre righe ordinandole

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 01/07/14 13:01

Ciao a tutti sono nuovo del forum e non riesco a trovare una soluzione al mio problema. Provo a spiegarmi: ho necessità di copiare automaticamente righe da un foglio all'altro che rispcchino determinati criteri ordinandole automaticamente in modo crescente per una determinata colonna.
Ho seguito il post http://www.pc-facile.com/forum/viewtopic.php?t=97073 che funziona per la copia ma non riesco ad ordinarle. Per utilizzare l'esempio del post vorrei ordinare il foglio di risultato per importo crescente.
Il non utilizzo di macro sarebbe preferibile.
Grazie per la considerazione.
Mauri
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Sponsor
 

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 01/07/14 13:24

Ciao,

avremo bisogno di un piccolo file d'esempio. Le formule da usare sono più o meno le stesse.

Per ordinare i numeri basta tirare giù in una colonna libera ( esempio la in Z1 e sotto)

=PICCOLO($A$1:$A$100;RIF.RIGA(A1))

La formula legge i numeri del database in A1:A100

Per ottenere le corrispondenti descrizioni fai leggere ad un INDICE i risultati della colonna Z

=INDICE($B$1:$B$100;PICCOLO(SE($A$1:$A$100=Z1;RIF.RIGA($A$1:$A$100));CONTA.SE($Z$1:Z1;Z1)))

formula da confermare con control+maiusc+invio e una volta confermata estrae i corrispondenti valori dalla colonna B.

Questa - se ho capito- potrebbe essere una delle impostazioni che potresti adattare al tuo lavoro.



Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 01/07/14 15:14

Grazie ma come faccio a inserire un file di esempio?
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi ricky53 » 01/07/14 15:28

Ciao,
leggi QUI
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 01/07/14 15:35

Ok provate a scaricarlo da qui https://drive.google.com/file/d/0B3tMvm ... sp=sharing.
I fogli MARCO e MICHELE dovrebbero avere solo le righe di loro competenza ordinate per priorità. Non sono riuscito ad applicare la formula di CANAPONE.
Grazie ancora
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 01/07/14 16:38

Ciao,

in B2 foglio marco matriciale

=SE.ERRORE(PICCOLO(SE(Foglio1!$C$2:$C$2000="MARCO";Foglio1!$B$2:$B$2000);RIGHE($A$1:A1));"")

In C2

=SE(B2<>"";"MARCO";"")

In A2 matriciale

=SE(B2&C2<>"";INDICE(Foglio1!$A$2:$A$1000;CONFRONTA(B2&C2;INDICE(Foglio1!$B$2:$B$1000&Foglio1!$C$2:$C$1000;);0));"")

Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 01/07/14 18:21

---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 07:27

Grazie è migliorato ma non è ancora perfetto in quanto in caso di più righe con operatore e priorità uguali estrae sempre lo stesso valore di tempo.
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 07:38

Ciao,

mi spiace non poter allegare e leggere file

Modifica la formula matriciale

=SE(B2<>"";INDICE(Foglio1!$A$2:$A$1000;PICCOLO(SE(Foglio1!$C$2:$C$1000&Foglio1!$B$2:$B$1000+0=C2&B2;RIF.RIGA($A$2:$A$1000)-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"")

ho modificato il contatore finale


Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 07:54

Ciao,

non si legge la formula, riprovo

Codice: Seleziona tutto
=SE(B2<>"";INDICE(Foglio1!$A$2:$A$1000;PICCOLO(SE(Foglio1!$C$2:$C$1000&Foglio1!$B$2:$B$1000=C2&B2;RIF.RIGA($A$2:$A$1000)-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"")
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 07:59

Ciao la formula matriciale
=SE(B2<>"";INDICE(Foglio1!$A$2:$A$1000;PICCOLO(SE(Foglio1!$C$2:$C$1000&Foglio1!$B$2:$B$1000=C2&B2;RIF.RIGA($A$2:$A$1000)-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"") restituisce FALSO
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 08:04

Ciao,

hai già provato la seconda formula, chiusa dal conta.più.se ? Sul foglio sul quale sto facendo le prove mi sembra funzioni.

Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 08:07

Scusa ho controllao meglio. Funziona. Sei un grande complimenti
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 08:11

Ciao,

più o meno stessa formula, ma mette in ordine crescente anche gli orari


Codice: Seleziona tutto
=SE(B2<>"";PICCOLO(SE(Foglio1!$B$2:$B$1000=B2;SE(Foglio1!$C$2:$C$1000="marco";Foglio1!$A$2:$A$1000));CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2));"")


Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 12:00

Ciao Canapone ancora io.....
Non avevo mai usato le formule matriaciali..
Ho notato che eliminando delle righe dal foglio1 le formule matriaciali dei fogli MARCO e MICHELE si modificano e vanno quindi in errore. C'è un modo per bypassare il problema?
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 12:20

TI invio cosa cambia nelle formule:
prima di eleminare le righe
=SE(B2<>"";INDICE(Foglio1!$A$2:$A$1000;PICCOLO(SE(Foglio1!$C$2:$C$1000&Foglio1!$B$2:$B$1000+0=C2&B2;RIF.RIGA($A$2:$A$1000)-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"")
dopo aver eliminato 2 righe
=SE(B2<>"";INDICE(Foglio1!$A$2:$A$998;PICCOLO(SE(Foglio1!$C$2:$C$998&Foglio1!$B$2:$B$998+0=C2&B2;RIF.RIGA($A$2:$A$1000)-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"")
Si modificano i range pur essendoci il $. Non c'è qualche impostazione che lo impedirebbe?
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 13:10

Ciao,

credo tu debba correggere ogni volta il RIF.RIGA(A$2:A$1000) allineandolo a cosa legge INDICE: corretta la prima formula devi riconfermarla e copiarla in basso.

Il "+0" credo non serva più: l'avevo messo nella formula per fare un controllo sul file dove provavo l'INDICE.

Se devi gestire molti dati forse delle tabelle pivot sarebbero più comode da usare.

Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: EXCEL2007 estrarre righe ordinandole

Postdi dmmicheli » 02/07/14 13:39

Non devo gestire molti dati max 500 righe per una decina di colonne.
Ma le righe vengono continuamente eliminate una volta ultimata la lavorazione per poi inserire successive righe per lavorazioni successive... Se per ogni eliminazione devo allineare manualmente le formule di 8 fogli di lavoro di 10 colonne ognuno rinuncio a usare excel.. :-? ...Triste saluto.
dmmicheli
Utente Junior
 
Post: 19
Iscritto il: 01/07/14 12:47

Re: EXCEL2007 estrarre righe ordinandole

Postdi ricky53 » 02/07/14 13:46

Ciao,
perchè ti sei precluso l'utilizzo delle macro?

Con poche righe di codice avresti quello che ti occorre, facilmente, con nessun limite sui dati e senza avere i problemi delle cancellazioni.

Inizia d utilizzare il registratore di macro, dopo l'attivazione ordina i dati come ti occorrono, seleziona i dati che vuoi copiare, copiali nel foglio dove ti occorrono ed interrompi il registratore.
Il codice ottenuto, con qualche aggiustamento potrebbe essere proprio quello che fa al tuo caso.

Prova ed invia il codice e ci lavoriamo su insieme.

ATTENZIONE: è necessario che tu dia le informazioni precise su quali sono i criteri di ordinamento e quali dati vanno copiati.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: EXCEL2007 estrarre righe ordinandole

Postdi CANAPONE » 02/07/14 14:45

Ciao, saluto subito Ricky: una macro risolverebbe il tutto

Sono a zero VBA, sempre usando formule prova a tarare sul file che usi


Codice: Seleziona tutto
=SE(B2<>"";INDICE(Foglio1!$A$2:$A$10;PICCOLO(SE(Foglio1!$C$2:$C$10&Foglio1!$B$2:$B$10=C2&B2;RIF.RIGA(INDIRETTO("A2:A"&CONTA.VALORI(Foglio1!$A$2:$A$5000)+1))-1);CONTA.PIÙ.SE($B$2:B2;B2;$C$2:C2;C2)));"")



per tarare intendo sostituisci i 10 con l'ultima riga del database: controlla che il conta.valori+1 restituisca lo stesso numero.

Così il rif.riga dovrebbe allinearsi automaticamente. Sei però costretto ad usare INDIRETTO nella formula (formula volatile=possibili problemi di rallentamento).

Ripeto il VBA dovrebbe risolvere il tutto.

Rispendo una parola per le pivot: le matriciali sono molto pesanti per il processore e creano spesso dei problemi.

Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "EXCEL2007 estrarre righe ordinandole":


Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti