La consultazione del forum è libera per tutti.
Per poter porre un quesito è invece necessario essere un utente registrato (clicca qui se non lo sei).
Tutti gli utenti che richiedono un supporto, come da REGOLAMENTO, sono caldamente invitati ad allegare un file di esempio con l'indicazione di quello che si desidera ottenere.
Buongiorno a tutti!
Ho un problema con un report che spero possiate aiutarmi a risolvere.
In allegato il file con i dati.
Con le funzioni INDICE/CONFRONTA, ricerco per una data settimana (ovvero su una colonna fissa) il valore massimo per gli osservatori nella colonna D.
Io però ho bisogno di farlo in funzione della settimana che si aggiorna di volta in volta nella cella V3.
Non sono riuscita a trovare da sola una soluzione che funzioni.
Grazie mille in anticipo a chi mi risponderà.
Sonia
ciao
prova questa
=SE(MAX(SE(($E$4:$P$4=$V$3);$E$5:$P$14))=0;"";INDICE($D$5:$D$14;AGGREGA(15;6;RIF.RIGA($1:$100)/($E$5:$P$14=MAX(SE(($E$4:$P$4=$V$3);$E$5:$P$14)));1)))
oppure
=INDICE($D$5:$D$15;CONFRONTA(MAX(FILTRO($E$5:$P$15;($E$4:$P$4=V3)));FILTRO($E$5:$P$15;($E$4:$P$4=V3));0))
in questo caso ho aggiunto una riga che poi nasconderai
per gestire il valore 0
Avevo pensato la formula seguente, ma non avevo visto le risposte di gianfranco55 che sono migliori della mia, te la propongo comunque.
=INDICE('Per Osservatore'!D5:D14;CONFRONTA(MAX(MATR.PRODOTTO(('Per Osservatore'!E4:P4='Per Osservatore'!V3)*1;MATR.TRASPOSTA(E5:P14)));MATR.PRODOTTO(('Per Osservatore'!E4:P4='Per Osservatore'!V3)*1;MATR.TRASPOSTA('Per Osservatore'!E5:P14));0))
ciao
Roll87
non esistono formule migliori
la migliore è quella che riesci a capire 😀
devi gestire la mancanza di dati
se la settimana non ha dati ti restituisce sempre il primo nome
ecco perchè nella prima formula mia ho aggiunto
=SE(MAX(SE(($E$4:$P$4=$V$3);$E$5:$P$14))=0;""
e nella seconda ho optato per l'aggiunta di una riga sopra
la tua mi piace molto
non ho mai usato MATR.PRODOTTO()
=INDICE(D5:D14;CONFRONTA(MAX(MATR.PRODOTTO((E4:P4=V3)*1;MATR.TRASPOSTA(E5:P14)));MATR.PRODOTTO((E4:P4=V3)*1;MATR.TRASPOSTA(E5:P14));0))
imparato anche questa😃
Ragazzi,
siete stati fantastici! La tua @gianfranco55 funziona, mentre la tua @roll87 non mi funziona...ma forse perchè ho desistito subito visto che funzionava la prima...
Ora però 🙂 funziona con MAX ma non con MIN...devo individuare l'osservatore più attivo e quello meno attivo...ho semplicemente sostituito la funzione MAX con MIN ma non funge 🙁 ...
grazie in anticipo di nuovo!!!!!
ciao
elimina pure la prima riga con gli zeri
e usa
=SE.ERRORE(INDICE($D$5:$D$14;CONFRONTA(MIN(FILTRO(FILTRO($E$5:$P$15;($E$4:$P$4=V3));FILTRO($E$5:$P$15;($E$4:$P$4=V3))>0));FILTRO(FILTRO($E$5:$P$15;($E$4:$P$4=V3));FILTRO($E$5:$P$15;($E$4:$P$4=V3))>0);0));"Non Rilevato")
=SE.ERRORE(INDICE($D$5:$D$14;CONFRONTA(MAX(FILTRO(FILTRO($E$5:$P$15;($E$4:$P$4=V3));FILTRO($E$5:$P$15;($E$4:$P$4=V3))>0));FILTRO(FILTRO($E$5:$P$15;($E$4:$P$4=V3));FILTRO($E$5:$P$15;($E$4:$P$4=V3))>0);0));"Non Rilevato")
E' perfetto!!!! Grazie mille di nuovo!!!!