Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

MEDIA SE

15 views
Skip to first unread message

elena

unread,
Apr 20, 2012, 4:16:02 PM4/20/12
to
Salve a tutti.
Come da oggetto vorrei poter fare una media con excel,
in base ad un determinato criterio.

Avete presente la funzione SOMMA.SE ?
Ecco ! voglio ottenere la stessa cosa pero' avere come risultato non una
somma ma una media.
Mi spiego :
Immaginate di avere un foglio di calcolo dove ho i vari incassi in base ai
gg della settimana di tutte le settimane di un mese per esempio:
LU 530,00
MA 220,00
ME 100,00
" "
" "
ecc.
" "
LU 120,00
MA 115,00

Ecco io voglio per esempio ottenere la media di incasso per i giorni LUNEDI.
quindi fare una media secondo il criterio LUNEDI.
e cosi' via per il MARTEDI' MERCOLEDI' ecc.

Vi chiedo di aiutarmi perche' devo assolutamente risolvere questo problema 1
Grazie 1
Cuiao







plinius

unread,
Apr 20, 2012, 6:17:28 PM4/20/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f91c3fe$0$1391$4faf...@reader1.news.tin.it...
=SOMMA.SE($A$1:$A$100;"LU";$B$1:$B$100)/CONTA.SE($A$1:$A$100;"LU")

Ciao,
E.


paoloard

unread,
Apr 21, 2012, 3:02:30 AM4/21/12
to


"elena" ha scritto nel messaggio
news:4f91c3fe$0$1391$4faf...@reader1.news.tin.it...
**********************

=MEDIA(SE(A1:A10="LU";B1:B10)) matriciale, da confermare con
Ctrl+Maiusc+Invio

sarebbe bene parametrizzare la formula, nel senso di assegnare ad una cella
per es. B1 il dato da cercare (LU, MA, ecc..), quindi modificare la formula:
=MEDIA(SE(A1:A10=B1;B1:B10)) amatriciale
cosě se vuoi sapere la media di MA devi solo inserirlo in B1 (cosě per ME
ecc..).
ciao paoloard





elena

unread,
Apr 21, 2012, 3:38:11 AM4/21/12
to

"paoloard" <xxp...@alice.it> ha scritto nel messaggio
news:jmtm2t$r31$1...@dont-email.me...
Non si puo' creare la funzione in modo tale che quando
la richiamo mi viene fuori la finestra
con i tre campi da inserire ? Un po' come somma.se .
Per evitare di dover scrivere ogni volta la formula. anche perche' la devrei
utilizzare piů
volte su piů ffogli.
Se si puo' mi dite come si fa ?
grazie

elena

unread,
Apr 21, 2012, 3:56:49 AM4/21/12
to

"plinius" <punto.l...@LEVARElibero.it> ha scritto nel messaggio
news:jmsn9r$nlp$1...@dont-email.me...

elena

unread,
Apr 21, 2012, 6:45:28 AM4/21/12
to

"paoloard" <xxp...@alice.it> ha scritto nel messaggio
news:jmtm2t$r31$1...@dont-email.me...
Per spiegarmi avrei bisogno di sapere/capire come posso tradurre la formula
che mi hai dato (che funziona) in linguaggio VB per crearmi una funzione da
utilizzare comodamente.
quindi al lato pratico, una volta creata la funzione, non farň altro che
richiamare la funzione stessa e
inserire i parametri nei tre campi della finestra della funzione. (un po'
come quando richiami la funzione SOMMA.SE che ti appare la finestra con i
tre campi).
spero di essermi spiegata .
grazie

plinius

unread,
Apr 21, 2012, 8:36:24 AM4/21/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f926846$0$1384$4faf...@reader1.news.tin.it...
Inserisci in un modulo questa UDF
-------------------
Function media_se(flag As Range, cond As String, vals As Range) As Double
Dim f, vv, n As Long
vv = vals
For Each f In flag
n = n + 1
If UCase(f) <> UCase(cond) Then vv(n, 1) = ""
Next
media_se = Application.Average(vv)
End Function
--------------------

Ciao,
E.


elena

unread,
Apr 21, 2012, 9:12:31 AM4/21/12
to

"plinius" <punto.l...@LEVARElibero.it> ha scritto nel messaggio
news:jmu9kc$noj$1...@dont-email.me...
>> utilizzare più
>> volte su più ffogli.
>> Se si puo' mi dite come si fa ?
>> grazie
>>
>
> Inserisci in un modulo questa UDF
> -------------------
> Function media_se(flag As Range, cond As String, vals As Range) As Double
> Dim f, vv, n As Long
> vv = vals
> For Each f In flag
> n = n + 1
> If UCase(f) <> UCase(cond) Then vv(n, 1) = ""
> Next
> media_se = Application.Average(vv)
> End Function
> --------------------
>
> Ciao,
> E.
>
>
GRAZIE TANTISSIME !!!!
FUNZIONA !!!!
Mi spiegheresti un po' la funzione, e mi sapresti indicare risorse in
internet per imparare un po' ,
non voglio poprio un corso completo e ampio , ma semplicemente per sapermi
destreggiare un po'
per eventuale necessità futura come questa di oggi.
grazie !!

plinius

unread,
Apr 21, 2012, 9:29:05 AM4/21/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f92b243$0$1384$4faf...@reader2.news.tin.it...
Dall'editor del VBA puoi richiamare la guida in linea per capire e
approfondire ciascuna delle cose che non conosci.
Prova e leggere, magari, ci prendi gusto e ti appassioni... :-)
Se poi ci saranno cose che ti rimangono oscure, chiedi pure qui!

Ciao,
E.


elena

unread,
Apr 21, 2012, 9:37:53 AM4/21/12
to

"plinius" <punto.l...@LEVARElibero.it> ha scritto nel messaggio
news:jmucn5$8g0$1...@dont-email.me...
Ti ringrazio !
Una cosa pero', ora ho provato a chiudere tutto e a riaprire excel e a
richiamare la funzione ma nel menu funzioni < Definite dall'utente
la funzione non c'e' piu'.
Come faccio a conservarla per poterla utilizzare in ogni altra necessità ?
grazie !

paoloard

unread,
Apr 21, 2012, 9:53:51 AM4/21/12
to


"elena" ha scritto nel messaggio
news:4f928fcd$0$1388$4faf...@reader2.news.tin.it...
> così se vuoi sapere la media di MA devi solo inserirlo in B1 (così per ME
> ecc..).
> ciao paoloard
>
>
Per spiegarmi avrei bisogno di sapere/capire come posso tradurre la formula
che mi hai dato (che funziona) in linguaggio VB per crearmi una funzione da
utilizzare comodamente.
quindi al lato pratico, una volta creata la funzione, non farò altro che
richiamare la funzione stessa e
inserire i parametri nei tre campi della finestra della funzione. (un po'
come quando richiami la funzione SOMMA.SE che ti appare la finestra con i
tre campi).
spero di essermi spiegata .
******************************

Per VB meglio che chiedi ad altri, per es. Enrico (alias Plinius) che già
discute su questo thread.
Ciao paoloard

plinius

unread,
Apr 21, 2012, 9:56:44 AM4/21/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f92b835$0$1381$4faf...@reader2.news.tin.it...
La funzione è disponibile solo nel file in cui l'hai scritta.
Se vuoi usarla in altri file devi copiarcela oppure, in alternativa, creare
un tuo file di componenti aggiuntivi e caricarlo nel tuo excel.
Questa seconda via è funzionale e pratica per tuo uso personale, ma ha
l'inconveniente di non essere disponibile per eventuali altri utilizzatori
del file.

Ciao,
E.


elena

unread,
Apr 21, 2012, 10:12:39 AM4/21/12
to

"plinius" <punto.l...@LEVARElibero.it> ha scritto nel messaggio
news:jmueav$hjp$1...@dont-email.me...
Quindi se ho ben capito io non posso creare
una funzione ed esportarla per renderla ad esempio disponibile ad altri
che hanno excel e vorrebbero usufruire delle mie funzioni ?

plinius

unread,
Apr 21, 2012, 10:29:18 AM4/21/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f92c05c$0$1385$4faf...@reader2.news.tin.it...
Se la funzione è inclusa nel file, anche passandolo ad altri resta
disponibile.
Quindi il file nel quale hai inserito l'UDF MEDIA_SE puoi passarlo
tranquillamente e chiunque lo apra troverà che le celle che contengono
quella funzione lavoreranno come dovuto.

Se, diversamente, vuoi che quella funzione sia (per te) disponibile su
qualunque file tu stia usando, allora dovresti seguire l'altra strada (file
di componenti aggiuntivi in cui inserisci tutte le UDF che vuoi).

Ovvio che tutte le volte che userai però quella funzione in qualsivoglia
file, sarà funzionante solo nel "tuo" excel, mentre a chiunque altro darebbe
l'errore #NOME?

Ciao,
E.




elena

unread,
Apr 21, 2012, 10:46:02 AM4/21/12
to
Grazie !!!!

plinius

unread,
Apr 21, 2012, 10:53:01 AM4/21/12
to

"elena" <e...@ely.it> ha scritto nel messaggio
news:4f92c82e$0$1388$4faf...@reader2.news.tin.it...
> Grazie !!!!

Prego!!!!
:-)


0 new messages