Excel e gli applicativi Microsoft Office Calcolare la media ultime 5 celle di una riga, ignorando celle vuote

LoginRegistrati
Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
  • Autore
    Articoli
  • #22773 Risposta

    Joelionsan
    Partecipante

      Buongiorno a tutti
      devo calcolare la media degli ultimi 5 valori di una riga che si aggiorna periodicamente con la conseguenza che anche la media deve aggiornarsi allo stesso modo. Nel caso in cui l'aggiornamento tuttavia presenti delle celle vuote, le medesime dovranno essere ignorate dalla formula.

      Nel file excel che allego, ho trovato come risolvere il problema quando la serie è in COLONNA (J come mostrato nel  foglio 1) con la formula:

      =MEDIA(INDIRETTO("J"&AGGREGA(14;6;RIF.RIGA(J1:J30)/(J1:J30<>"");5)&":J"&CERCA(2;1/(J1:J30<>"");RIF.RIGA(J1:J30))))

      tuttavia se provo appunto a riadattare i riferimenti nel foglio 2 con la serie numerica traslata, non riesco a venirne a capo con gli stessi risultati. Potete aiutarmi?

      Grazie

      Joelionsan (Excel 2016)

      Allegati:
      You must be logged in to view attached files.
      #22777 Risposta

      ElleEsse
      Partecipante

        ciao

        purtroppo il file che hai allegato non fornisce risultati nemmeno sul foglio1 in quanto evidentemente manca qualche oggetto (di seguito come viene visualizzato)

        l'ho scaricato per cercare di capire quale fosse il tuo obiettivo, perchè onestamente dalla esposizione che hai fatto non mi è ben chiaro

        vuoi fare la media degli ultimi 5 elementi di una serie ?

        nel caso in cui alcuni di questi siano assenti non è chiaro cosa vorresti come risultato ..

        se la serie è

        1 , 0 , 1 , 3 , 0

        vuoi ottenere come risultato 1 - ovvero (1+1+3)/5 - o 5/3 - da (1+1+3)/3 ?

        la funzione MEDIA di excel applicata alla serie < 1 0 1 3 0 > restituisce 1

        la stessa funzione MEDIA di excel applicata alla stessa serie ma eliminando gli 0 - quindi applicata alla serie < 1 (clear)  1 3 (clear)  > - dove con clear intendo che la cella prima contenente 0 è stata svuotata - restituisce 5/3 = 1.666...

        immagino che senza troppo artifici - ma gestendo al meglio i dati in modo da sfruttare queste proprietà - tu possa trovare semplicemente la soluzione al tuo problema  

        comunque.. se approfondisci un po' la problematica rispondendo alle mie domande .. ti mostro possibili soluzioni  

        ps. che si tratti di serie orizzontale - in riga - o verticale - in colonna - poco importa

        #22778 Risposta

        Joelionsan
        Partecipante

          Ciao e grazie per la veloce risposta!

          La formula che ho indicato nel file lavora bene in realtà, perché la media degli ultimi 5 valori (non nulli) in colonna J cioè

          (29;31;1;1;1) = 12,6 corretto. Se provi ad inserire qualunque numero nelle celle J25; J27 o J29 vuote, vedrai che il risultato sarà coerente.

          Tornando al quesito originario quindi, come posso rendere la formula funzionante adattando i riferimenti se riporto la stessa serie in riga anziché in colonna? 
          Grazie ancora per il supporto

           

          #22781 Risposta

          ElleEsse
          Partecipante

            scusa Joelionsan ma ..

            .. ribadisco che il foglio che hai allegato NON funziona   evidentemente mancano oggetti di cui tu disponi e che non hai allegato

             

             

            #22832 Risposta
            Santuberto
            Santuberto
            Partecipante

              Buonasera. Non essendo esperto in materia, avrei risolto utilizzando una riga d'appoggio (di righe ce ne sono tante...). Vedi se ti puo servire.

              Allegati:
              You must be logged in to view attached files.
              #22838 Risposta
              Marius44
              Marius44
              Moderatore
              • Sfida #4
                15 pts

                Buongiorno a tutti

                Scusate l'intromissione ma non mi è chiaro il problema.

                Premesso che in Excel la Funzione MEDIA si può riferire sia a dati in colonna sia in righe (come detto in un "intervallo" che può essere orizzontale o verticale), leggo nelle note:

                "Se in un intervallo o in un riferimento di cella è contenuto testo, valori logici o celle vuote, tali valori verranno ignorati. Le celle contenenti il valore zero verranno invece incluse nel calcolo."

                Quindi non mi spiego il problema (ovvero non ho capito).

                Ciao,

                Mario

                 

                #22839 Risposta
                Santuberto
                Santuberto
                Partecipante

                  Buongiorno Marius44. Il problema che è stato posto, lo trovo interessante e credo che potrebbe capitare anche a me la necessità di doverlo risolvere, per cui “m’intrometto” anch’io. E’ vero che si tratta di fare una media (cosa molto semplice), ma la media dev’essere fatta sugli ultimi 5 valori maggiori o minori di zero. Questo significa che se negli ultimi 20 valori per 15 volte appare lo zero (es: 48,0,0,0,2,0,0,0,0,3,4,0,0,0,0,0,0,0,1,0), io devo calcolare la media degli ultimi 20 valori. Ossia: devo partire dal 48 che è il primo degli ultimi 5 valori diversi da zero. Ma non sempre si presenta la situazione che ho descritto, per cui a volte devo fare la media degli ultimi 20 valori, a volte degli ultimi 15… Un cordiale saluto da Santuberto. PS: dai un’occhiata al file Z EXCEL 57 che ho allegato nella mia precedente risposta.

                  #22840 Risposta

                  ElleEsse
                  Partecipante

                    bah

                    io un paio di giorni fa chiesi di esporre chiaramente quali fossero le esigenze - avevo anche formulato un paio di domande banali banali per capire cosa si volesse come risultato, in quanto il foglio excel allegato NON funzionando NON poteva essere di aiuto per comprendere..

                    @santuberto

                    quella è una possibile interpretazione .. e in ogni caso allora si dovrebbe parlare di media degli ultimi 5 valori significativi che è diverso dal dire che se negli ultimi 20 valori per 15 volte appare lo zero (es: 48,0,0,0,2,0,0,0,0,3,4,0,0,0,0,0,0,0,1,0), io devo calcolare la media degli ultimi 20 valori perchè nel primo caso la media è

                    ( 48 + 2 + 3 +4 +1 ) / 5 = 11.6

                    nel secondo caso

                    ( 48 + 0 + 0 + 0 + 2 + etc etc ) / 20 = 2.9

                    ps. dal momento che l'interessato non ha nemmeno ritenuto opportuno rispondere al primo quesito posto un paio di giorni fa quando sollevò il problema .. mi sembra del tutto superfluo che se ne continui a discutere (le soluzioni tra l'altro sono estremamente banali in ogni caso )

                    #22853 Risposta

                    Joelionsan
                    Partecipante

                      Beh non è proprio così, perdonami: ti ho già risposto che il file originario dell'esempio funziona breve (tanto che ho ricevuto diversi messaggi in privato sui tentativi di risoluzione) e che se a te non funziona per compatibilità tra versioni excel, oppure perchè hai modificato la formula originaria nella cella verde ....... (visto che leggo dallo screenshot che alleghi sopra nella tua risposta la formula è diventata

                      =MEDIA(INDIRETTO("J"&AGGREGATE(14;6;RIF.RIGA(J1:J30)/(J1:J30<>"");5)&":J"&CERCA(2;1/(J1:J30<>"");RIF.RIGA(J1:J30)))) 

                      continuare il ping pong su questo punto non è di valore aggiunto per nessuno. 

                       

                      Allargando invece la discussione su altri tentativi di risoluzione che stanno emergendo, credo il problema risieda nel fatto che la funzione AGGREGA come riportato da sito ufficiale di Office Support

                      "E' progettata per le colonne di dati o per gli intervalli verticali. Non è progettato per righe di dati o intervalli orizzontali."

                      Questo implica quindi probabilmente l'adattamento della formula ad altre sintassi, considerata appunto la necessità di trasposizione da colonna a riga.

                      Grazie

                       

                       

                       

                      #22856 Risposta

                      ElleEsse
                      Partecipante

                        ah ..

                        ho riprovato a scaricare il file iniziale e solo aprendolo la formula è sempre quella

                        e già solo il fatto che tu abbia pensato che io possa aver modificato la formula - che tu chiami originale - in un altra per poi lamentare qui che non funziona .. è sufficiente per abbandonare ogni tipo di argomentazione

                        buona fortuna!

                        #22863 Risposta

                        ElleEsse
                        Partecipante

                          comuque.. dal momento che quattro righe di codice le avevo scritte.. magari a qualcuno possono servire..

                          gli elementi della serie andrebbero scritti nelle caselle a fondo grigio in riga 4

                          ogni volta che vengono apportate modifiche alle celle che potrebbero contenere elementi, viene aggiornala la media degli ultimi 5 significativi a destra (visualizzata in A1)

                          la macro è comunque banalissima e parametrizzabile a piacere indicando come enne il numero di elementi da considerare significativi (attualmente 5), come riSerie la riga in cui vengono digitati gli elementi (attualmente 4) e come startCol il numero di colonna iniziale (attualmente 3).

                           

                          buon divertimento  

                           

                          Allegati:
                          You must be logged in to view attached files.
                          #22865 Risposta

                          Joelionsan
                          Partecipante

                            Ottimo. 

                            Sempre per gli altri interessati, se qualcuno riuscisse a risolvere l'arcano anche senza VBA, la risoluzione è sempre di utilità.

                            Ciao

                             

                            #22866 Risposta
                            D@nilo
                            D@nilo
                            Partecipante
                              2 pts

                              Buonasera

                              =MATR.SOMMA.PRODOTTO((A1:AD1<>"")*(A1:AD1)*(RIF.COLONNA(A1:AD1)>GRANDE((A1:AD1<>"")*RIF.COLONNA(A1:AD1)-1;5)))/5

                               

                              oppure

                               

                              =MEDIA(INDIRETTO(INDIRIZZO(1;AGGREGA(14;6;RIF.COLONNA(A1:AD1)/(A1:AD1<>"");5))&":"&INDIRIZZO(1;MAX(INDICE((A1:AD1<>"")*RIF.COLONNA(A1:AD1);)))))

                              #22867 Risposta

                              Joelionsan
                              Partecipante

                                C H A P E A U

                                Complimenti, funzionano perfettamente entrambe, e soprattutto grazie!

                                 

                              LoginRegistrati
                              Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
                              Rispondi a: Calcolare la media ultime 5 celle di una riga, ignorando celle vuote
                              Gli allegati sono permessi solo ad utenti REGISTRATI
                              Le tue informazioni:



                              vecchio frac - 2750 risposte

                              albatros54
                              albatros54 - 833 risposte

                              patel
                              patel - 724 risposte

                              Marius44
                              Marius44 - 634 risposte

                              Luca73
                              Luca73 - 587 risposte