Ordinamento automatico excel



  • Ordinamento automatico excel
    di maffux (utente non iscritto) data: 30/01/2017 10:35:36

    ciao a tutti
    sono nuovo del forum e novello di questo genere di cose.

    vi spiego brevemente cosa sto facendo

    ho un file in cui gestisco un gioco
    ci sono vari fogli.
    ogni foglio e' una tappa e in questa tappa vengono totalizzati dei punti per ogni persona della lista tramite varie formule
    nel foglio12 rinominato Classifica c'e' una tabella in cui nella colonna A ci sono i numeri per identificare le posizioni, nella colonna B i nominativi, nella colonna O il totale dei punti
    nelle altre colonne intermedie ci sono tutti i punteggi delle varie tappe che si inseriscono automaticamente trovando i dati negli altri fogli tramite dei cerca verticale
    naturalmente il totale della colonna O e' come formula di somma delle altre colonne
    cercando in rete ho trovato questo codice da inserire nel VBA del Foglio12 ma non ho ottenuto il risultato sperato...
    quando si modificano i valori automaticamente la classifica non si riordina

    dimenticavo...il mio intento e' quello che la classifica si ordini senza ogni volta ordinarla manualmente

    grazie a tutti
     
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Worksheets("Foglio12").Range("B3:O300").Sort Key1:=Range("O3"), Order1:=xlDescending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
    
    End Sub



  • di patel data: 30/01/2017 11:27:45

    l'evento change scatta quando si inserisce il dato manualmente





  • di alfrimpa data: 30/01/2017 11:28:21

    Ciao maffux

    Allega un file di esempio dimostrativo di quello che vuoi fare/ottenere.

    Alfredo





  • di maffux (utente non iscritto) data: 30/01/2017 11:33:39

    devo aspettare la conferma di registrazione per poter allegare il file?



  • di maffux (utente non iscritto) data: 30/01/2017 11:35:49

    allegato



  • di alfrimpa data: 30/01/2017 12:07:10

    Prova con la macro che vedi sotto.

    L'ordinamento viene effettuato ogni volta che viene attivato il foglio "Classifiche"

    Alfredo
     
    Private Sub Worksheet_Activate()
    Worksheets("Classifiche").Range("B3:n300").Sort Key1:=Range("n3"), Order1:=xlDescending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
    End Sub






  • di maffux (utente non iscritto) data: 30/01/2017 12:17:02

    mi da errore

    Per il completamento dell'operazione è necessario che le celle unite siano di dimensioni identiche




  • di alfrimpa data: 30/01/2017 12:18:24

    Scusami avevo dimenticato di dirti che vanno eliminate le celle unite sul foglio "Classifiche" (colonne Be C).

    Alfredo





  • di maffux (utente non iscritto) data: 30/01/2017 12:25:17



    funzionaa...grazie...

    avrei altre 2 domande sempre su questo file posso chiedere qui o meglio se apro altri post?

    grazie...

    sono nuovo e non so come andate meglio a gestire il tutto...

    grazie ancora



  • di alfrimpa data: 30/01/2017 12:32:17

    Se la domanda è relativa a diverso argomento meglio se apri una nuova discusisone.

    Alfredo