Funzione SE nidificata



  • Funzione SE nidificata
    di antony2014 (utente non iscritto) data: 28/10/2014 16:59:30

    Ho bisogno di aiuto per la funzione SE nidificata. Ho due gruppi di soggetti: il gruppo A sono soggetti di sesso maschile, ed il gruppo B soggetti di sesso femminile. All'interno di ciascun gruppo vi sono soggetti di varie età: 20 soggetti hanno tra i 20 ed i 30 anni, 15 soggetti hanno tra i 30 ed i 50 anni, 25 soggetti hanno più di 50 anni. Per ciascun soggetto devo calcolare il metabolismo basale. A tale scopo devo utilizzare 6 formule diverse: tre per il sesso maschile e tre per quello femminile, a secondo dell'età. Ho preparato un foglio di calcolo in cui in cui vi è una casella di input (A1) in cui scrivo MASCHIO o FEMMINA, ed un'altra casella in cui scrivo l'età (A2). Nella casella di uscita devo scrivere la formula che mi restituisce il valore del metabolismo basale: = SE(A2>20<30;SE(A1="Maschile";qui scrivo la formula corrispondente; come andare avanti?.



  • di ninai (utente non iscritto) data: 28/10/2014 17:56:00

    Ciao

    personalmente non userei dei SE() ma metterei tutto in una tabella dalla quale "pescare" i dati. Sarebbe meglio che tu allegassi un file con uno schema delle casistiche e delle formule da applicare, magari si riesce a stabile un algoritmo specifico.



  • di Mister_x (utente non iscritto) data: 28/10/2014 18:01:44

    ciao

    detto cosi' non si capisce cosa vuoi ottenere
    servirebbe un tuo file per vedere come e' strutturato e costruire la formula adeguata
    comunque con i dati che tu hai inserito il primo approccio sull'eta' e' pressapoco cisi'
    in A2 metti l'eta dove devei calcolare la formula
    =SE(E(A2>=20;A2<=30);"Prima Formula";SE(E(A2>30;A2<=50);"seconda Formula";SE(A2>50;"terza formula";"inserito anno minore di 20")))

    in attesa di un tuo file
    ciao





  • di antony2014 (utente non iscritto) data: 28/10/2014 18:41:12

    Intanto grazie. Ho allegato il file, spero possa essere utile.



  • di ninai (utente non iscritto) data: 28/10/2014 18:54:09

    uno dei tanti modi possibili è:
    =B5*SCEGLI(CONFRONTA(B3;{021314151};1)+5*(B4="femminile");1,2;1,3;1,4;1,5;1,6;1,05;1,07;1,1;1,15;1,25)

    in B4, devi mettere , come sesso : maschile o Femminile, puoi anche mettere M o F ma devi modificare la formule: "F" invece di "femminile"



  • di ninai (utente non iscritto) data: 28/10/2014 19:11:40

    un altro modo:
    =B5*INDICE({1,21,31,41,51,6.1,051,071,11,151,25};1+(B4="femminile");CONFRONTA(B3;{021314151};1))


    tieni presente che questa sintassi va bene per il 2010. Per il 2007, nelle due formule, devi sostituire "" con ";"



  • di ninai (utente non iscritto) data: 28/10/2014 19:29:22

    allego un file "cerca metabolismo", nel quale propongo diverse altre soluzioni, anche con ausilio di tabelle di appoggio che potrebbero rendere più plastico il calcolo (modifica/aggiunta valori).
    La più semplice potrebbe essere:
    =CERCA.VERT(B3;$L$7:$N$11;2+(B4="femminile"))

    in L: fassce di età (0,21,31,41,51)
    in M: valori per maschi (1,2 -1,3 - ecc.)
    in N: valori per femmine (1,05 - 1,07 ecc.):



  • di scossa data: 28/10/2014 19:56:30

    cit. ninai:
    =CERCA.VERT(B3;$L$7:$N$11;2+(B4="femminile"))

    tagliamo 1 carattere, giusto per .....
    =CERCA.VERT(B3;$L$7:$N$11;3-(B4="maschile");1)



    scossa's web site
    Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno.
    Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)



  • di scossa data: 28/10/2014 19:59:49

    Senza tabelle di appoggio:

    =CERCA.VERT(B3;{01,051,2.211,071,3.311,11,4.411,151,5.511,251,6};2+(B4="maschile");1)



    scossa's web site
    Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno.
    Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)



  • di ninai (utente non iscritto) data: 28/10/2014 20:02:39

    Scossa
    visto che vuoi giocare "sporco":
    =CERCA.VERT(B3;L7:N11;3-(B4="maschile");1)

    -4 ;) ;)




  • di ninai (utente non iscritto) data: 28/10/2014 20:15:08

    l'hai voluto tu:
    =CERCA.VERT(B3;{0520.21730.311040.411550.512560};2+(B4="maschile");1)/100+1



  • di scossa data: 28/10/2014 20:20:33

    Vabbè allora cambio gioco: facciamo a chi la scrive più lunga:

    =CERCA.VERT(B3;{0520.21730.311040.411550.512560};2+(B4="maschile");1)/100+1-(4^2)+(2^4)



  • di antony2014 (utente non iscritto) data: 08/11/2014 16:26:31

    Cari amici, ho provato le varie soluzioni, mi sembra che quella proposta da Ninai sia quella che mi funziona meglio. Purtroppo non sono riuscito a scaricare il file di esempio: lo potresti ricaricare?. Grazie!!