IF composto in Access



  • IF composto in Access
    di Carlo (utente non iscritto) data: 15/11/2017 09:39:47

    Ciao a tutti, non sono un utente esparto.
    In una query Access vorrei impostare una IF che mi calcolasse il campo [Zona2] utilizzando quanto contenuto nel campo [Region].

    Cosa sbaglio?
     
    Zona2: IIf([Region]="Area1 - N1";”1”;IIf([Region]="Area1 – N2";”1”;IIf([Region]="Area1 – N3";”2”;IIf([Region]="Area1 – N4";”2”;IIf([Region]="Area2 - CS1";”3”;IIf([Region]="Area2 – CS2";”2";IIf([Region]="Area2 – CS3";”4”;IIf([Region]="Area2 – CS4";”4”))))))))



  • di oregon (utente non iscritto) data: 15/11/2017 09:50:03

    Scusa ma comprenderai da solo che "cosa sbagli" non si può sapere se non dici quale deve essere il calcolo che devi effettuare o se non dici quale errore si presenta.


  • IF composto in Access
    di Carlo (utente non iscritto) data: 15/11/2017 10:20:25

    Di seguito associo al contenuto del campo [Region] il risultato che desidero (che corrisponde a 1 o 2 o 3 o 4).

    In sostanza, se
    [Region]="Area1 – N1" -> il campo [Zona 2] deve contenere “1”
    altrimenti se
    [Region]="Area1 – N2" -> il campo [Zona 2] deve contenere “1”
    altrimenti se
    [Region]="Area1 – N3" -> il campo [Zona 2] deve contenere “2”
    altrimenti se
    [Region]="Area1 – N4" -> il campo [Zona 2] deve contenere “2”
    altrimenti se
    [Region]="Area2 – CS1"-> il campo [Zona 2] deve contenere “3”
    altrimenti se
    [Region]="Area2 – CS2"-> il campo [Zona 2] deve contenere “3”
    altrimenti se
    [Region]="Area2 – CS3"-> il campo [Zona 2] deve contenere “4”
    altrimenti se
    [Region]="Area2 – CS4"-> il campo [Zona 2] deve contenere “4”


    Dando il RUN alla query per verificarne il funzionamento mi appare una finestra con testo "ENTER PARAMETER VALUE" e "1", con possibilita' di inserire dei valori in una stringa di ricerca della stessa finestra.

     
    Zona2: IIf([Region]="Area1 - N1";”1”;IIf([Region]="Area1 – N2";”1”;IIf([Region]="Area1 – N3";”2”;IIf([Region]="Area1 – N4";”2”;IIf([Region]="Area2 - CS1";”3”;IIf([Region]="Area2 – CS2";”2”;IIf([Region]="Area2 – CS3";”4”;IIf([Region]="Area2 – CS4";”4”))))))))



  • di oregon (utente non iscritto) data: 15/11/2017 11:03:19

    Nell'ultima IIF manca la parte Else, ovvero cosa succede se l'ultimo caso non viene soddisfatto.

    Ad esempio, dovrebbe essere

    (Region = "Area2 – CS4", "4", "?")