Excel e gli applicativi Microsoft Office Formula classifica tabella

Login Registrati
Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
  • Autore
    Articoli
  • #45821 Score: 0 | Risposta

    yago271181
    Partecipante

      Buongiorno a tutti,

      ho il seguente problema con una tabella.

      Ho una serie di classifiche, di seguito l'una all'altra tutte nella stessa tabella, inserite in ordine temporale (ore 10:30;11:00; 11;30 ecc). Con una formula da me impostata (funzione RANGO) riesco ad ottenere una classifica che, tuttavia, tiene conto dell'ordine di grandezza di ciascun punteggio (colonna "score") nei diversi orari di partenza delle gare, ma non riesce ad esprimere correttamente la reale posizione in classifica in quanto, in presenza di punteggi duplicati salta di una posizione (la funzione RANGO mi restituisce le posizioni 1,1,3,4,4,6 ANZICHE' 1,1,2,3,3,4).

      Per ottenere il risultato voluto, e cioè le reali posizioni (1,1,2,3,3,4), ho provato a creare una formula con la funzione frequenza solo che non ci sono riuscito.

      Se vi allego il file excel, qualcuno di voi potrebbe aiutarmi con la formula corretta?

      Per comodità ho già inserito, nel foglio allegato, nella colonna E la formula con la funzione RANGO. Ho lasciato volutamente vuota la colonna F così da poter inserire la formula che consenta di ottenere la corretta posizione in classifica, in base al punteggio (score) di ciascun partecipante ed all'orario in cui verrà disputata la gara. 

      Grazie mille a tutti per i vostri contributi

       

       

       

       

      Versione Office: Office 2021

      Allegati:
      You must be logged in to view attached files.
      #45823 Score: 1 | Risposta

      vecchio frac
      Senior Moderator
        247 pts

        Aspettando i Maghi delle Formule, nel frattempo trovo logico che i primi a parimerito facciano "saltare" la seconda posizione. Cioe' non mi sembra illogico che i primi due ex aequo occupino la posizione "1" mentre la posizione "2" non viene assegnata e si passa alla posizione "3". Ma probabilmente mi dirai che si tratta di una convenzione, e che bisogna adeguarsi alla richiesta dell'utente   

        Comunque in testa mi frulla l'idea di verificare che se nella cella dei valori si trova un valore maggiore della cella sopra, si aumenta di una posizione quella appena assegnata altrimenti si assegna la stessa posizione.

        In B1 ho messo "1" e in B2 la formula =SE(A2=A1;B1;B1+1) poi trascinata in basso.

        #45824 Score: 0 | Risposta

        yago271181
        Partecipante

          Ciao vecchi frac e intanto grazie per la tua risposta.

          Allora, con riferimento alla tua prima osservazione : "Aspettando i Maghi delle Formule, nel frattempo trovo logico che i primi a parimerito facciano "saltare" la seconda posizione. Cioe' non mi sembra illogico che i primi due ex aequo occupino la posizione "1" mentre la posizione "2" non viene assegnata e si passa alla posizione "3". Ma probabilmente mi dirai che si tratta di una convenzione, e che bisogna adeguarsi alla richiesta dell'utente"

          Ti confermo che è una mia precisa richiesta quella di ottenere le esatte posizioni e non l'ordine di grandezza del valore del punteggio. Quindi ho necessità che la formula legga esattamente le posizioni (1,1,2,3,3,4,5,6,6,6,7 ecc). 

           

          Con riferimento alla tua seconda osservazione : "Comunque in testa mi frulla l'idea di verificare che se nella cella dei valori si trova un valore maggiore della cella sopra, si aumenta di una posizione quella appena assegnata altrimenti si assegna la stessa posizione."

          Non ho capito bene cosa intendi, tuttavia, sono riuscito ad ottenere le corrette posizioni utilizzando la seguente formula con la funzione FREQUENZA combinata con SOMMA SE:  =SOMMA(SE(D3<D:D;--(FREQUENZA(D:D;D:D)>0))).

          Il problema è che il risultato che mi restituisce,  è corretto in termini assoluti (nel senso che prende correttamente in considerazione la posizione di ciascun concorrente in base al valore del punteggio) tuttavia lo rapporta con l'intero elenco di valori della colonna "score" e non con quella parte di valori della colonna "score" che è delimitata dall'orario di partenza della singola  gara (in sostanza non calcola la corretta posizione della classifica per quel determinato orario di partenza della gara, ma lo fa solo con riferimento a tutti i valori di tutte le gare che si svolgono in diversi orari).

          Quindi avrò le posizioni correttamente indicate, ad esempio,  dalla 1 alla 40, ma non avrò le posizioni dalla 1 alla 15 per la gara delle 10:30; dalla 1 alla 15 per la gara delle 13:00 ecc.

          Spero di essere stato piu' chiaro  e, ad ogni modo, per una migliore visione d'insieme, nel foglio allegato, ho aggiunto, nella colonna F  "CLASSIFICA", la formula con la funzione FREQUENZA combinata con la funzione SOMMA SE che mi restituisce, tuttavia, la posizione assoluta di ciascun punteggio rispetto all'intero elenco e non alla singola gara distinta per orario. 

          Chiedo, appunto, un aiuto per la compilazione della formula, con riferimento a ciascuna singola gara. 

          Allegati:
          You must be logged in to view attached files.
          #45829 Score: 1 | Risposta

          vecchio frac
          Senior Moderator
            247 pts

            Quindi tu vuoi realizzare una classifica parziale per ognuno dei gruppi di concorrenti che appartengono alla medesima fascia oraria e in base al punteggio conseguito.

            #45831 Score: 1 | Risposta

            gianfranco55
            Partecipante
              62 pts

              ciao

              prova questa

              =SOMMA(SE.ERRORE(SE(--(D2<SCARTO(INDIRETTO("D"&CONFRONTA($B2;$B$1:$B$1000;0));;;CONTA.SE($B$2:$B$1000;$B2)));--(FREQUENZA(SCARTO(INDIRETTO("D"&CONFRONTA($B2;$B$1:$B$1000;0));;;CONTA.SE($B$2:$B$1000;$B2));SCARTO(INDIRETTO("D"&CONFRONTA($B2;$B$1:$B$1000;0));;;CONTA.SE($B$2:$B$1000;$B2)))>0));0);1)

               

              ma visto che hai il 2021

              =SOMMA(SE.ERRORE(SE(--(D2<FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0));--(FREQUENZA(FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0);FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0))>0));0);1)

              #45832 Score: 0 | Risposta

              yago271181
              Partecipante

                esattamente

                #45833 Score: 0 | Risposta

                yago271181
                Partecipante

                  Grazie Gianfranco55. La formula funziona perfettamente.

                  Non ci sarei mai riuscito, se non tra 150 anni...

                  Veramente grazie!!!

                  #45834 Score: 1 | Risposta

                  gianfranco55
                  Partecipante
                    62 pts

                    con il 2021

                    =SOMMA(SE.ERRORE(SE(--(D2<FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0));--(FREQUENZA(FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0);FILTRO($D$2:$D$1000;$B$2:$B$1000=$B2;0))>0));0);1)

                    #45835 Score: 2 | Risposta

                    vecchio frac
                    Senior Moderator
                      247 pts

                      Io ho applicato lo stesso principio della mia formula precedente, ampliandolo.

                      Prima ho ordinato la tabella per Time e Score (dal maggiore al minore).

                      Poi ho applicato il metodo già visto: un 1 nella prima cella (g2 nel mio esempio) e poi la formula =SE(B3=B2;SE(D3=D2;G2;G2+1);1) (da G3 in giù), la quale semplicemente controlla che per ogni cella l'orario di arrivo sia quello del gruppo precedente e in quel caso controlla se lo score è uguale al precedente: se lo score è uguale assegna lo stesso numero di ordine altrimenti lo aumenta di uno. Se l'orario di partenza è diverso dal precedente, allora comincia un nuovo gruppo e la cella è reimpostata sul valore 1. Allego file.

                      Allegati:
                      You must be logged in to view attached files.
                      #45837 Score: 1 | Risposta

                      vecchio frac
                      Senior Moderator
                        247 pts

                        gianfranco55 ha scritto:

                        prova questa

                        Suppongo che questa funzioni senza il previo riordinamento della tabella.

                        #45838 Score: 1 | Risposta

                        vecchio frac
                        Senior Moderator
                          247 pts

                          yago271181 ha scritto:

                          Non ci sarei mai riuscito, se non tra 150 anni...

                          Nemmeno io   

                          #45840 Score: 1 | Risposta

                          gianfranco55
                          Partecipante
                            62 pts

                            Suppongo che questa funzioni senza il previo riordinamento della tabella.

                            SI crea una matrice con solo i valori riferiti alla data 

                            180
                            36
                            45
                            32
                            28
                            18
                            10
                            37
                            12
                            100
                            13
                            100
                            19
                            16
                            17

                            è la stessa cosa di scarto()  ma più semplice

                            #45846 Score: 0 | Risposta

                            yago271181
                            Partecipante

                              Grazie per l'ulteriore contributo!

                              #45847 Score: 0 | Risposta

                              yago271181
                              Partecipante

                                Grazie mille!!!

                              Login Registrati
                              Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
                              Rispondi a: Formula classifica tabella
                              Gli allegati sono permessi solo ad utenti REGISTRATI
                              Le tue informazioni: