Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Trovare in una lista i 3 numeri minori in base ad un criterio

Ultimo Aggiornamento: 31/12/2022 11:49
Post: 8
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
29/12/2022 18:55

Ciao a tutti
Come posso trovare in una lista di oggetti i tre valori minimi ( ultimo , penultimo, terzultimo ), secondo un criterio.
Esempio:
colonna A , ci sono vari nomi di oggetti.
colonna B , ci sono i valori

colonna C1 inserisco il nome dell'oggetto, di cui voglio i risultati, nelle celle d1; e1; f1;.

Ho provato con min.se ma ne trovo uno , forse ci vuole una formula Min nidificata?

Grazie mille
G.M.
Post: 420
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Senior
EXCEL 2016 - SPREAD32
OFFLINE
29/12/2022 20:03

sii così gentile da pubblicare il file

leo

LEO
https://t.me/LordBrum
Post: 2.767
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
29/12/2022 20:50

ciao
magari prova con PICCOLO(SE........................rif.colonna(A$1) e la trascini a destra

min() rende sempre e solo un dato il minimo
[Modificato da federico460 29/12/2022 20:51]
Post: 8
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
29/12/2022 21:59

allego file di esempio

grazie
Post: 2.770
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
29/12/2022 22:12

ciao
in h4 e lo tiri in basso
da confermare matriciale CTRL MAIUSCOLO INVIO
=SE.ERRORE(PICCOLO(SE($A$2:$A$31=$G$2;$C$2:$C$31);RIF.RIGA(A1));"")

in G4

=SE.ERRORE(INDICE($B$2:$B$1000;CONFRONTA(1;INDICE(($A$2:$A$1000=$G$2)*($C$2:$C$1000=$H4);;);0));"")
Post: 9
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
29/12/2022 22:25

Ciao federico
grazie mille
Ho provato ad inserire le formule nelle rispettive celle
ma non funziona

riallego file con le formule inserite

Post: 421
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Senior
EXCEL 2016 - SPREAD32
OFFLINE
29/12/2022 23:25

Federico ti aveva detto esplicitamente che le formule in H dovevano essere di tipo matriciale, cosa che si ottiene con Ctrl-Shift-Del premuti mentre il cursore si trova nel rigo della formula
Poichè in questo momento sono libero, se la cosa non dispiace a Federico e facilita te, mi permetto di rimandarti io il file corretto.
Osserva le formule in colonna H : ci sono le parentesi graffe, effetto della manovra che dovevi fare

Leo

LEO
https://t.me/LordBrum
Post: 2.771
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
29/12/2022 23:29

ciao
L2018
facciamo un pochino di didattica

questa è matriciale
=SE.ERRORE(PICCOLO(SE($A$2:$A$31=$G$2;$C$2:$C$31);RIF.RIGA(A1));"")

questa no
=SE.ERRORE(INDICE($B$2:$B$1000;CONFRONTA(1;INDICE(($A$2:$A$1000=$G$2)*($C$2:$C$1000=$H4);;);0));"")

mi sai dire cos'è che rende la seconda formula non matriciale?
NB
confronta(1;(a:a=X)*(b:b=Y);0) è matriciale
[Modificato da federico460 29/12/2022 23:31]
Post: 422
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Senior
EXCEL 2016 - SPREAD32
OFFLINE
29/12/2022 23:39

no, non lo so
una volta ho letto invece il significato, il motivo del rendere matriciale una formula ma sinceramente non ricordo la spiegazione
-------------
forse matriciale indica che il range viene reso in qualche modo come tabella ?
Leo
[Modificato da L2018 29/12/2022 23:51]

LEO
https://t.me/LordBrum
Post: 2.772
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
29/12/2022 23:53

te la spiego io a mie parole

la formula sarebbe

=SE.ERRORE(INDICE($B$2:$B$1000;CONFRONTA(1;($A$2:$A$1000=$G$2)*($C$2:$C$1000=$H4);0));"")
ma questa crea una matrice esempio
0000010000000000100
e dovrebbe essere confermata matriciale
Con INDICE() eliminiamo il matriciale creando una sequenza che excel legge come fisica

=SE.ERRORE(INDICE($B$2:$B$1000;CONFRONTA(1;INDICE(($A$2:$A$1000=$G$2)*($C$2:$C$1000=$H4);;);0));"")
[Modificato da federico460 29/12/2022 23:53]
Post: 423
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Senior
EXCEL 2016 - SPREAD32
OFFLINE
30/12/2022 00:01

be', forse mi sono avvicinato in qualche modo col ricordo che avevo di ciò che ho letto
molto interessante la spiegazione, credo di aver capito qualcosa
molto interessante anche la "filosofia" stessa che sta dietro a questi meccanismi
purtroppo non ho la calma e il tempo di correre fino a questi livelli, ma mi piacerebbe
grazie

Leo

LEO
https://t.me/LordBrum
Post: 10
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
30/12/2022 11:22

Grazie ragazzi
l2018 e federico
Il risultato è quello che cercavo, e grazie a voi ho imparato un'altra cosa, buone feste

G.M.
Post: 11
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
30/12/2022 20:35


Ciao ragazzi
Una domanda:
Rif.Riga(A1), nella formula sotto elencata, a cosa corrisponde, che funzione a
Mi serve sapere nel caso voglio modificare i riferimenti di celle ecc...

SE.ERRORE(PICCOLO(SE($A$2:$A$31=$G$2;$C$2:$C$31);RIF.RIGA(A1));"")

Grazie mille e buona serata
Post: 2.773
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
30/12/2022 20:42

ciao
la funzione piccolo ha una variabile che nella formula vedi come
K

non è altro che il numero di valore più piccolo che vuoi estrarre

1= il più piccolo
5 il quinto più piccolo
3 il terzo più piccolo


ora noi abbiamo bisogno che ci trovi il numero delle righe partendo dal più piccolo

RIF.RIGA(A1) equivale a 1
trascinando la formula in basso ecco che diventa
RIF.RIGA(A2) che equivale a 2
RIF.RIGA(A3) che equivale a 3

ecc...

ecco che crei la lista dal più piccolo al più grande
[Modificato da federico460 30/12/2022 20:43]
Post: 12
Registrato il: 30/10/2013
Utente Junior
Office 10
OFFLINE
31/12/2022 11:49

Grazie mille per la tua spiegazione

Auguri di un buon anno
Vota: 15MediaObject5,00115 1
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 00:14. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com