Supponi che la tua azienda sponsorizzi uno spettacolo di auto di beneficenza e che tu sia incaricato di tenere traccia dei punteggi e di trovare i vincitori.

Ogni colonna nel foglio di lavoro rappresenta una diversa categoria di auto e ogni riga rappresenta un diverso partecipante al concorso. Ogni cella della tabella contiene un punteggio per quel concorrente nelle categorie appropriate. Il tuo compito, dopo aver tracciato i punteggi, è calcolare i primi tre vincitori di ciascuna categoria: primo, secondo e terzo posto.

Se ogni categoria conterrà un punteggio univoco per ogni persona (non ci sono legami), calcolare i primi tre punteggi in ogni categoria è relativamente facile. Supponiamo che le prime tre righe del foglio di lavoro vengano utilizzate per mostrare i primi tre vincitori in ciascuna categoria. La cella A1 contiene 1 (per il primo posto), la cella A2 contiene 2 (per il secondo posto) e la cella A3 contiene 3 (per sapere quale posto).

La tabella dei punteggi effettiva inizia nella cella A5, con le etichette delle colonne. La cella A5 contiene la parola “Nomi” e quindi le celle B5: AA5 hanno i nomi di ciascuna categoria di auto. Le celle A6: A100 contengono i nomi di ogni concorrente e B6: AA100 contiene i punteggi di quei concorrenti, per categoria.

Immettere la seguente formula nella cella B1:

=INDEX($A$6:$A$100,MATCH(LARGE(B$6:B$100,$A1),B$6:B$100,0))

Copia la formula nel resto dell’intervallo dei risultati, B1: AA3. La formula esamina la classifica nella colonna A (da 1 a 3) e quindi la utilizza per scegliere il primo, il secondo e il terzo valore più grande in ogni colonna. Piuttosto che restituire il valore, tuttavia, il valore viene utilizzato per scegliere il nome della persona con quel valore; è questo nome che viene restituito.

Questo approccio, come accennato, presuppone che non ci siano legami nella tabella dei punteggi. Se è possibile avere legami, il punteggio diventa molto più complesso e, forse, la soluzione migliore è creare una funzione definita dall’utente in una macro. (La ragione per cui i pareggi lo rendono più difficile è che i giudici devono elaborare una serie di regole con cui rompere i legami. Queste regole possono variare, il che significa che le formule – e le funzioni definite dall’utente – possono variare.)

Un altro suggerimento è modificare il modo in cui viene mantenuta la tabella dei punteggi. Invece di creare una grande matrice (26 colonne e quanti concorrenti ci sono), crea un piccolo database che ha solo tre colonne: nome, categoria e punteggio. Dovresti quindi inserire i dati per ogni persona nel database e ordinare il database per ottenere i vincitori desiderati. Basta ordinare prima per categoria e poi per punteggio e puoi facilmente vedere chi sono i primi tre concorrenti in ciascuna categoria.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (3041) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: