Condividi:        

Classifica autoaggiornante con excel

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

Classifica autoaggiornante con excel

Postdi Andrea_83 » 02/10/08 15:31

Salve a tutti, intanto io mi presento xchè sono nuovo, piacere mi chiamo andrea
Allora vi espongo il mio problema:
Ho creato un foglio di lavoro per gestire il fantacalcio.
Diciamo che mi funziona quasi tutto, cioè io metto i punti che ogni giocatore acquisisce ogni settimana e la classifica si aggiorna automaticamente sommando i punti di volta in volta e fin qui niente di speciale.
ho anche creato delle formule che in base all'aumentare dei punti cambiano la posizione in classifica, cioè che su uno spazio di 8 celle in colonna chi ha più punti si trovi nella cella più in alto. il problema è che automaticamente riesco solo a far muovere le celle con i valori dentro (cioè i punti) esempio:
andrea 31
roberto 27
vincenzo 21
ivan 18
nella giornata successiva andrea prende 4 punti, roberto 10, vincenzo 2, ivan 10.
la classifica sarebbe:
roberto 37
andrea 35
ivan 28
vincenzo 23
invece nel mio foglio di lavoro risulta cosi:
andrea 37
roberto 35
vincenzio 28
ivan 23
cioè si muovono le celle con i punti ma non quelle con i nomi.
la domanda è questa, posso associare le caselle tra loro in modo che si muovino entrambe?
scusate se mi sono espresso male, ma nn sono mai riuscito ad esprimermi scrivendo.
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Sponsor
 

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 02/10/08 16:58

Ciao Andrea_83 e benvenuto,

immagino che sia stao un errore aver inziato due discussioni identiche.

Tornando al problema esposte, nell'ordinamento non hai tenuto in considerazione le colonne che vuoi muovere, ma solo quella in cui fai l'ordinamento.

1) prova a fare una registrazione macro con l'rodinamento e vedi come è stato creato il codice
2) posta la formula che hai utilizzaato per effettuare l'rodinamento, oltre all'indiciazione di come hai strutturato i dati nel/nei foglio/i.

Prova e fa sapere.

Ciao
Tribuno
Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 02/10/08 17:40

si è stato chiaramente un errore i 2 post :oops:
c'è da premettere una cosa basilare io nn conosco molto bene excel.
cmq di dati in realtà ce n'è solo uno, cioè quello dei punti a fine giornata che noi abbiamo deciso di dare al primo 10 poi 7, 5, 4, 3, 2, 1,0 come la formula 1 più o meno.
io faccio tranquilla mente la formula della somma e facilmente mi esce il totale dei punti ottenuti da un giocatore man mano che le giornate vanno avanti.
poi volevo una classifica che con l'aumentare dei punti facesse vedere anche gli evenutali cambi di pozione in classifica.
nelle formule ho trovato quella "GRANDE", cioè quelle che restituisce il k-esimo valore da me scelto tra un insieme di celle. quindi basta chiedere che nella cella in alto riporti il valore più alto, nella seconda il secondo valora più alto e di seguito questo fino all'ottavo valore.
perfetto ora le celle con i punti si muovono automaticamente al crescere dei punti, solo che i nomi che sono scritti nelle celle di fianco a quelle con i punteggi chiaramente nn si spostano. detto ciò volevo sapere se c'era una formula o qualcosa che legasse le celle con i nome alle rispettive celle con il punteggio e che quindi al conseguente cambio di posizione in classifica che anche i nomi si spostino.
spero di essere stato più chiaro ora, se nn lo sono stato mi scuso in anticipo
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 02/10/08 18:15

faccio prima a mandare il file cosi mi capirete.
provate a mettere i punti nelle varie giornate, e vedrete che sotto la voce classifica le celle con il punteggio totale cambiano posizione, vorrei che anche le celle con i nomi lo facessero, ditemi se è possibile grazie
Allegati

[L’estensione rar è stata disattivata e non puó essere visualizzata.]

Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 02/10/08 18:53

Nel frattempo avevo preparato il file allegato, controllalo, io guardo quello che hai allegato.

Ciao
Tribuno

[L’estensione zip è stata disattivata e non puó essere visualizzata.]

Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 02/10/08 19:05

nn mi fa usare le macro come devo fare? ho gia abbassato la protezione
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 02/10/08 19:41

Hai messo a medio il livello delle macro (Strumenti--->Opzioni--->Protezione-->Protezione Macro--->Livello di protezione?

Se riesci a provare il mio allegato e fa quello di cui hai bisogno, allora si può modificare la macro adattandola al tuo foglio.

Fammi sapere.

Ciao
Tribuno
Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 02/10/08 21:51

Ciao,
ho modificato il tuo file adattandola alla mia macro, che ho dovuto un po' modificare.

Rimanendo invariata la tua struttura principale, ho creato, di fianco alla classifica di andata, un riepilogo generale dove viene visualizzata posizione attuale e precedente in classifica, con relativa differenza, punteggio, giornate e media.

La media l'ho messa nel riepilogo generale per avere un quadro completo della situazione, in questo caso, poiché la posizione del nominativo non è mai nella stessa posizione dell'andata e del ritorno, causa ordinamento della classifica, ho inserito la colonna delle giornate (che ha anche una funzione di controllo), ma non ho utilizzato la funzione Media, ma la classica divisione Punti/giornate.

Come dicevo prima la colonna giornate ha anche una funzione di controllo. Infatti, come vedi nell'allegato, accanto alla classifica di ritorno c'è pure il numero di giornate, con la formula
Codice: Seleziona tutto
=CONTA.VALORI(D7:V7;D19:V19)

in Z19, trascinata fino a Z26, in Z27, con carattere bianco, c'è la somma del range Z19:Z27, così come in AE15 (somma AE7:AE14): celle da non modificare perché servono per non far partire la macro se non ci sono dati completi da aggiornare, e per dati completi intendo che tutta la colonna di una giornata deve avere un valore numerico.

Da notare anche le seguenti formule:
in Z7 (poi trascinata fino a Z14
Codice: Seleziona tutto
=SE(VAL.ERRORE(RANGO(AB7;$AB$7:$AB$14));1;(RANGO(AB7;$AB$7:$AB$14)))

in AF7 (poi trascinata fino a AF14)
Codice: Seleziona tutto
=SE(VAL.ERRORE(AB7/AE7);0;AB7/AE7)

per non far visualizzare l'errore di calcolo se non c'è ancora nessun dato.

Il codice abbinato alla macro collegata al pulsante Classifica è
Codice: Seleziona tutto
Sub Ordina_Classifica()
Application.ScreenUpdating = False
If Range("AE15") <> Range("Z27") And (Range("Z27") / 8) = Int(Range("Z27") / 8) Then
'Copia dati precedenti
    For I = 7 To 14
        Cells(I, 30) = Cells(I, 26)
    Next I
'Riporta punti totali
    For I = 7 To 14
        Y = 19
            Do
                If Cells(Y, 2) = Cells(I, 27) Then
                    Cells(I, 28) = Cells(Y, 23)
                    Cells(I, 31) = Cells(Y, 26)
                    Exit Do
                End If
                Y = Y + 1
            Loop Until Y > 26
    Next I
'Differenza posizioni
    For I = 7 To 14
        Cells(I, 29) = Cells(I, 30) - Cells(I, 26)
    Next I
'Ordina
    Range("Z7:AE14").Select
    Selection.Sort Key1:=Range("Z7"), Order1:=xlAscending, Header:=xlNo, _
        OrderCustom:=1
    Range("A1").Select
End If
Application.ScreenUpdating = True
End Sub


Ho dovuto utilizzare la macro perché, almeno per quanto io conosca, utilizzando le funzioni native di excel non si riusciva, o perlomeno poi risultavano dati sballati dopo l'ordinamento.

Prova e fammi sapere se va bene.

Ciao
Tribuno

[L’estensione zip è stata disattivata e non puó essere visualizzata.]

Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Anthony47 » 03/10/08 00:39

Se vengono sempre assegnati punti "interi" (cioe' senza decimali) si puo' anche risolvere con sole formule:
A)modificare la formula W4:
Codice: Seleziona tutto
=SOMMA(D4:V4)+RIF.RIGA()/100

-copiare W4 fino a W11
-formattare le celle che ora mostrano i decimali in modo da vedere solo la parte intera

B)in Z4:
Codice: Seleziona tutto
=SCARTO($B$1;(GRANDE($W$16:$W$23;--(SINISTRA(Y4;1)))-AA4)*100-1;0)

-in AA4:
Codice: Seleziona tutto
=INT(GRANDE($W$16:$W$23;--(SINISTRA(Y4;1))))

-copiare le formule Z4:AA4 fino a Z11

A me sembra che funzioni...
Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 03/10/08 11:33

Sì, funziona...mi sa che è giunto il momento di studiare le grosse potenzialità della funzione Scarta()...

Ciao
Tribuno
Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Tribuno » 03/10/08 11:35

Ops... intendevo SCARTO()...
Avatar utente
Tribuno
Utente Senior
 
Post: 181
Iscritto il: 22/08/08 19:24

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 03/10/08 11:55

allora il file che mi ha mandato tribuno funzione perfettamente.
ora cerco di capire i passaggi descritti da anthony47 e provo a farli e vi faccio sapere.
grazie di tutto l'aiuto
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 03/10/08 12:03

scusate l'ignoranza ma cerco di capire bene:
Se vengono sempre assegnati punti "interi" (cioe' senza decimali) si puo' anche risolvere con sole formule:
A)modificare la formula W4:

Codice: Seleziona tutto
=SOMMA(D4:V4)+RIF.RIGA()/100 COSA DEVO METTERE NELLE PARENTESI?


-copiare W4 fino a W11
-formattare le celle che ora mostrano i decimali in modo da vedere solo la parte intera
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Anthony47 » 03/10/08 13:39

=SOMMA(D4:V4)+RIF.RIGA()/100 COSA DEVO METTERE NELLE PARENTESI?

Devi copiare la formula cosi' come e' e incollarla in cella W4 (meglio se, selezionata W4, incolli la formula nella "barra della formula", l' area in cui normalmente scrivi le formule).

Per Tribuno: in questo caso il trucco non e' tanto la funzione Scarto, quanto aver inserito nella parte decimale dei risultati la riga a cui quel risultato apartiene; e poiche' questo garantisce l' univocita' dei risultati (col LIMITE di 50 linee di classifica, non posono esserci 2 risultati identici) il Nominativo si sarebbe potuto anche estrarre con Cerca.Vert sulla tabella W16:Z23; ma voi sapete che a me Scarto piace proprio...

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 03/10/08 18:58

anthony, ho provato a fare come dici ma mi sembra di non aver capito bene il concetto, saresti cosi cortese da mandarmi il file gia con le tue modifiche in modo che io possa capire meglio come applicare le formule?
cosi magari non vi disturbo più le prossime volte.
grazie ciao
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi Andrea_83 » 03/10/08 19:40

ok ok ok ok , risolto tutto, ora funziona benissimo, anche se nn ho capito bene i passaggi.
poi magari cercherò di creare qualche altra cosa del genere per vedere se ho capito.
cmq grazie a tutti e due siete stati gentilissimi
Andrea_83
Utente Junior
 
Post: 11
Iscritto il: 02/10/08 14:59

Re: Classifica autoaggiornante con excel

Postdi riky88 » 03/08/10 16:20

ciao a tutti,
sono nuovo del forum ma vi spesso! non sono espertissimo di excel, ed infatti ho lo stesso identico problema di andrea_83, cercavo in internet una soluzione per fare una classifica che si auto-aggiorna finche mi sono imbattuto proprio su questo topic azzeccato e ho letto bene sia le spiegazioni di tribuno che di anthony.
il problema è che non riesco ad inserire la macro corretta per la mia tabella..mi potete aiutare in qualche modo??
se serve vi mando il file della tabella...
vi ringrazio anticipatamente! :)
riky88
Newbie
 
Post: 1
Iscritto il: 03/08/10 16:13

Re: Classifica autoaggiornante con excel

Postdi Anthony47 » 04/08/10 00:42

Dopo tanto tempo nessuno ricorda piu' di che cosa parlava questo topic; piuttosto che rileggerci tutto sperando che il tuo problema fosse esattamente quello di Andrea_83 forse e' meglio che spieghi tu che dati hai e che calcolo vuoi fare, poi vedremo che ipotesi fare.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Classifica autoaggiornante con excel":


Chi c’è in linea

Visitano il forum: Nessuno e 46 ospiti