IIF su criterio query

Anonimo
2012-08-10T16:25:12+00:00

Buonasera,

provo a mettere una funzione IIf in un criterio di una query ma se voglio eseguirla mi da che il criterio è troppo complesso. La riporto di seguito:

IIf([Forms]![Cerca immobili su richiesta]![Superficie in Mq] is not null ; Between (([Forms]![Cerca immobili su richiesta]![Superficie in Mq])-30*([Forms]![Cerca immobili su richiesta]![Superficie in Mq])/100) And (([Forms]![Cerca immobili su richiesta]![Superficie in Mq])+30*([Forms]![Cerca immobili su richiesta]![Superficie in Mq])/100));"")

Ho provato a scrivere: IIf(X=Y;"A";"B") . Mi da che il criterio è troppo complesso. Ne dedurrei che la funzione IIf non si può usare nel criterio di una query.

è così?

Grazie

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2012-08-13T15:27:50+00:00

Ecco la query finale:

SELECT Immobili.[Lotto vendita], Immobili.Prezzo, Immobili.[Superficie in Mq], Immobili.Indirizzo, Immobili.[Numero vani complessivo], Immobili.[Numero camere matrimoniali], Immobili.[Numero camerette], Immobili.[Tipo cucina], Immobili.Lavanderia, Immobili.Balconi, Immobili.Terrazza, Immobili.Garage, Immobili.[Posto auto], Immobili.Cantina, Immobili.Giardino, Immobili.Veranda, Immobili.[Terreno di pertinenza], Immobili.Piscina, Immobili.[Tipo riscaldamento], Immobili.[Aria condizionata], Immobili.Ascensore, Immobili.[Stato dell'immobile], Immobili.Certificazioni, Immobili.[Classe energetica]

FROM Immobili

GROUP BY Immobili.[Lotto vendita], Immobili.Prezzo, Immobili.[Superficie in Mq], Immobili.Indirizzo, Immobili.[Numero vani complessivo], Immobili.[Numero camere matrimoniali], Immobili.[Numero camerette], Immobili.[Tipo cucina], Immobili.Lavanderia, Immobili.Balconi, Immobili.Terrazza, Immobili.Garage, Immobili.[Posto auto], Immobili.Cantina, Immobili.Giardino, Immobili.Veranda, Immobili.[Terreno di pertinenza], Immobili.Piscina, Immobili.[Tipo riscaldamento], Immobili.[Aria condizionata], Immobili.Ascensore, Immobili.[Stato dell'immobile], Immobili.Certificazioni, Immobili.[Classe energetica], Immobili.[Tipo immobile], Immobili.Località, Immobili.[Tipo Contratto], Immobili.Venduto, Immobili.Annullato

HAVING (((Immobili.Prezzo) Between 1 And [Forms]![Cerca immobili su richiesta]![Prezzo]+(30*[Forms]![Cerca immobili su richiesta]![Prezzo]/100)) AND ((Immobili.[Superficie in Mq]) Between [Forms]![Cerca immobili su richiesta]![Superficie Min in Mq] And [Forms]![Cerca immobili su richiesta]![Superficie Max in Mq] Or (Immobili.[Superficie in Mq]) Is Null) AND ((Immobili.[Numero vani complessivo])>=[Forms]![Cerca immobili su richiesta]![Numero vani complessivo] Or (Immobili.[Numero vani complessivo]) Is Null) AND ((Immobili.[Numero camere matrimoniali])>=[Forms]![Cerca immobili su richiesta]![Numero camere matrimoniali] Or (Immobili.[Numero camere matrimoniali]) Is Null) AND ((Immobili.[Numero camerette])>=[Forms]![Cerca immobili su richiesta]![Numero camerette] Or (Immobili.[Numero camerette]) Is Null) AND ((Immobili.[Tipo cucina])=[Forms]![Cerca immobili su richiesta]![Tipo cucina] Or (Immobili.[Tipo cucina]) Is Null) AND ((Immobili.Lavanderia)=[Forms]![Cerca immobili su richiesta]![Lavanderia] Or (Immobili.Lavanderia) Is Null) AND ((Immobili.Balconi)=[Forms]![Cerca immobili su richiesta]![Balconi] Or (Immobili.Balconi) Is Null) AND ((Immobili.Terrazza)=[Forms]![Cerca immobili su richiesta]![Terrazza] Or (Immobili.Terrazza) Is Null) AND ((Immobili.Garage)=[Forms]![Cerca immobili su richiesta]![Garage] Or (Immobili.Garage) Is Null) AND ((Immobili.[Posto auto])=[Forms]![Cerca immobili su richiesta]![Posto auto] Or (Immobili.[Posto auto]) Is Null) AND ((Immobili.Cantina)=[Forms]![Cerca immobili su richiesta]![Cantina] Or (Immobili.Cantina) Is Null) AND ((Immobili.Giardino)=[Forms]![Cerca immobili su richiesta]![Giardino] Or (Immobili.Giardino) Is Null) AND ((Immobili.Veranda)=[Forms]![Cerca immobili su richiesta]![Veranda] Or (Immobili.Veranda) Is Null) AND ((Immobili.[Terreno di pertinenza])=[Forms]![Cerca immobili su richiesta]![Terreno di pertinenza] Or (Immobili.[Terreno di pertinenza]) Is Null) AND ((Immobili.Piscina)=[Forms]![Cerca immobili su richiesta]![Piscina] Or (Immobili.Piscina) Is Null) AND ((Immobili.[Tipo riscaldamento])=[Forms]![Cerca immobili su richiesta]![Tipo riscaldamento] Or (Immobili.[Tipo riscaldamento]) Is Null) AND ((Immobili.[Aria condizionata])=[Forms]![Cerca immobili su richiesta]![Aria condizionata] Or (Immobili.[Aria condizionata]) Is Null) AND ((Immobili.Ascensore)=[Forms]![Cerca immobili su richiesta]![Ascensore] Or (Immobili.Ascensore) Is Null) AND ((Immobili.Certificazioni)=[Forms]![Cerca immobili su richiesta]![Certificazioni] Or (Immobili.Certificazioni) Is Null) AND ((Immobili.[Classe energetica])=[Forms]![Cerca immobili su richiesta]![Classe energetica] Or (Immobili.[Classe energetica]) Is Null) AND ((Immobili.[Tipo immobile])=[Forms]![Cerca immobili su richiesta]![Tipo immobile]) AND ((Immobili.Località)=[Forms]![Cerca immobili su richiesta]![Località]) AND ((Immobili.[Tipo Contratto])="Vendita") AND ((Immobili.Venduto)=No) AND ((Immobili.Annullato)=No)) OR (((Immobili.Prezzo) Between 1 And [Forms]![Cerca immobili su richiesta]![Prezzo]+(30*[Forms]![Cerca immobili su richiesta]![Prezzo]/100)) AND ((Immobili.[Tipo immobile])=[Forms]![Cerca immobili su richiesta]![Tipo immobile]) AND ((Immobili.Località)=[Forms]![Cerca immobili su richiesta]![Località]) AND ((Immobili.[Tipo Contratto])="Vendita") AND ((Immobili.Venduto)=No) AND ((Immobili.Annullato)=No) AND (([Forms]![Cerca immobili su richiesta]![Numero vani complessivo]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Numero camere matrimoniali]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Numero camerette]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Tipo cucina]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Lavanderia]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Balconi]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Terrazza]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Garage]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Posto auto]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Cantina]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Giardino]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Veranda]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Terreno di pertinenza]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Piscina]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Tipo riscaldamento]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Aria condizionata]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Ascensore]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Certificazioni]) Is Null) AND (([Forms]![Cerca immobili su richiesta]![Classe energetica]) Is Null));

In pratica la base su cui ragionare è questa:

Usare il criterio normale, poi aggiungere OR ed un altro criterio (Il secondo criterio funge da parte falsa per il primo).

La risposta è stata utile?

0 commenti Nessun commento

6 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-08-13T12:25:39+00:00

    Ciao Giorgio,

    bene, ma sarebbe buona norma del forum, postare la soluzione individuata, in modo tale che se qualcun altro in futuro dovesse avere lo stesso problema, troverebbe la risposta ed eviterebbe di ripetere la stessa domanda!

    Grazie.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2012-08-13T12:15:04+00:00

    Ho già risolto, tramite una miriade di tentativi.

    grazie cmq

    Saluti

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2012-08-13T11:52:03+00:00

    Ciao Giorgio,

    puoi provare a postare tutta la query?

    La risposta è stata utile?

    0 commenti Nessun commento