se nidificato con più condizioni



  • se nidificato con più condizioni
    di Max Tix (utente non iscritto) data: 25/02/2014 18:45:12

    salve a tutti
    il mio quesito è questo:ho due parametri S e L con i limiti seguenti
    S L
    0 0
    5 33,33
    70 66,66
    95 100
    100
    vorrei scrivere una funzione tale per cui quando si verificano le condizioni riportate di seguito in una cella accanto appaia la classificazione come di seguito

    classificazione
    S > 95 S
    S >= 70 L >= 66,666 SL
    >= 33,333 SF
    < 33,333 SA
    S >= 30 L >= 66,666 LMS
    >= 33,333 FMS
    < 33,333 AMS
    S >= 5 L >= 66,666 LS
    >= 33,333 LF
    < 33,333 AS
    S < 5 L >= 66,666 L
    >= 33,333 F
    < 33,333 A

    classificazione
    S % L % Classificazione
    85 70 SL
    97 35 S
    75 42 SF
    65 31 FALSO vorrei che si visualizzasse AMS
    4 52 FALSO vorrei che si visualizzasse F
    la funzione usata è
    =SE(A18>=95;"S";SE(A18>=70;SE(B18>=66,666;"SL";SE(B18>=33,333;"SF";SE(B18<33,33;"SA"))))) che ovviamente non è sufficiente, ma non riesco a concatenarla in modo corretto


  • se nidificato con più condizioni
    di Max Tix (utente non iscritto) data: 25/02/2014 18:54:20

    ovviamente ringrazio tutti coloro che mi aiuteranno a risolvere questo enigma



  • di ninai (utente non iscritto) data: 25/02/2014 20:05:58

    ciao
    se non ho capito male, ti sonsiglio di impostare la tabella delle casistiche in modo diverso:
    tipo:
    0 5 30 70
    0 A AS AMS SA
    33,33 F LF FMS SF
    66,66 L LS LMS SL

    e poi con la formula in C18:
    =SE(A18>95;"S";CERCA.VERT(B18;$M$3:$Q$5;CONFRONTA(A18;$N$2:$Q$2)+1))

    allego file "cerca in tabella"
    verificati i risultati



  • di Vecchio Frac data: 25/02/2014 20:09:23

    Sei vincolato a una formula sul foglio di lavoro?
    La soluzione VBA secondo me ti richiederà pochissimo sforzo, hai già identificato tutti i casi da dare in pasto a Select Case.





  • se nidificato con più condizioni
    di Max Tix (utente non iscritto) data: 25/02/2014 21:20:58

    per ninai
    grazie. è proprio la cosa che mi serve.
    io ho un elenco di valori percentuali ai quali voglio in automatico attribuire un codice. e così mi sembra che funzioni tutto.
    adesso devo studiare e capire la formula che ancora mi è poco chiara....
    un saluto
    e grazie ancora per la rapidità di intervento



  • di Mister_x (utente non iscritto) data: 25/02/2014 23:45:18

    ciao

    e se utilizzassimo una bella funzione da mettere in un Modulo?

    i tuoi dati in A18 e B18 in
    C18=Classificazione(A18;B18)

    85 - 70 ---- SL

    ciao
     
    Public Function Classificazione(S As Range, L As Range)
    Dim Testo As String
     If S > 95 Then
       Testo = "S"
    ''
     ElseIf S >= 70 And L >= 66.666 Then
       Testo = "SL"
     ElseIf S >= 70 And L >= 33.333 Then
       Testo = "SF"
     ElseIf S >= 70 And L < 33.333 Then
       Testo = "SA"
    ''
     ElseIf S >= 30 And L >= 66.666 Then
       Testo = "LMS"
     ElseIf S >= 30 And L >= 33.333 Then
       Testo = "FMS"
     ElseIf S >= 30 And L < 33.333 Then
       Testo = "AMS"
    ''
     ElseIf S >= 5 And L >= 66.666 Then
       Testo = "LS"
     ElseIf S >= 5 And L >= 33.333 Then
       Testo = "LF"
     ElseIf S >= 5 And L < 33.333 Then
       Testo = "AS"
    ''
     ElseIf S < 5 And L >= 66.666 Then
       Testo = "L"
     ElseIf S < 5 And L >= 33.333 Then
       Testo = "F"
     ElseIf S < 5 And L < 33.333 Then
       Testo = "A"
    ''
     Else
       Testo = "SA"
     End If
    Classificazione = Testo
    End Function
    






  • di Mister_x (utente non iscritto) data: 25/02/2014 23:53:48

    ciao

    Ho allegato il file Classificazione.xlsm con gia la funzione inserita e con le prove di valore
    in celle gialle

    Ciao