PDA

View Full Version : programmare in excel


dario84m
24-04-2008, 14:01
ciao a tutti devo fare una funzione in excel che mi faccia questo:

se a > 2 e b=1 deve restiturimi il valore 2 se no 3
se a> 2 e b= 2 deve restituirmi il valore 3 se no 4

il risultato si deve vedere nella stessa cella
io sono arrivato a questo punti

=SE(E(A>2; B=1); 2; 3) non riesco ad aggiungere la seconda parte si puo fare??

amedeoviscido
24-04-2008, 14:31
ciao a tutti devo fare una funzione in excel che mi faccia questo:

se a > 2 e b=1 deve restiturimi il valore 2 se no 3
se a> 2 e b= 2 deve restituirmi il valore 3 se no 4

il risultato si deve vedere nella stessa cella
io sono arrivato a questo punti

=SE(E(A>2; B=1); 2; 3) non riesco ad aggiungere la seconda parte si puo fare??

Non è perfettamente chiaro. Devono essere due funzioni da inserire in due celle, oppure in un'unica cella? Perché in un'unica cella non si può fare. In pratica non puoi restituire nella stessa cella ad esempio sia 3 che 4.

Se invece vuoi DUE funzioni allora puoi fare così:

=SE(A>2 & B=1; 2; 3)

e l'altra

=SE(A>2 & B=2; 3; 4)

MarcoGG
24-04-2008, 14:34
A e B sono riferimenti a celle, o sono named ranges, o variabili ?

dario84m
24-04-2008, 14:38
A e B sono riferimenti a celle, o sono named ranges, o variabili ?

sono celle

dario84m
24-04-2008, 14:42
Non è perfettamente chiaro. Devono essere due funzioni da inserire in due celle, oppure in un'unica cella? Perché in un'unica cella non si può fare. In pratica non puoi restituire nella stessa cella ad esempio sia 3 che 4.

Se invece vuoi DUE funzioni allora puoi fare così:

=SE(A>2 & B=1; 2; 3)

e l'altra

=SE(A>2 & B=2; 3; 4)

due funzioni nella stessa cella ovviamente deve restituire solo un risultato

MarcoGG
24-04-2008, 14:59
Come già segnalato da amedeoviscido, la tua richiesta non può essere processata così com'è.
Tu chiedi :

SE A>2 AND B=1 >> 2
ELSE 3

SE A>2 AND B=2 >> 3
ELSE 4

Il caso 1 rientra nell'ELSE del caso 2 e vice-versa.
Quindi chiedi una funzione che scrive "contemporaneamente" 2 valori nelle varie situazioni.
Esempio :
A = 2
B = 1

condizione 1 FALSA >> scrivo 3
condizione 2 FALSA >> scrivo 4... :nono:

dario84m
24-04-2008, 15:08
Come già segnalato da amedeoviscido, la tua richiesta non può essere processata così com'è.
Tu chiedi :

SE A>2 AND B=1 >> 2
ELSE 3

SE A>2 AND B=2 >> 3
ELSE 4

Il caso 1 rientra nell'ELSE del caso 2 e vice-versa.
Quindi chiedi una funzione che scrive "contemporaneamente" 2 valori nelle varie situazioni.
Esempio :
A = 2
B = 1

condizione 1 FALSA >> scrivo 3
condizione 2 FALSA >> scrivo 4... :nono:


I Valori alla fine sono gli stessi quindi non puo darmi due risultati se uso la E All'inizio che serve per fare il classico and

se a=1
e b=1

ed io faccio

=se(e(a<2(vera); b=1(vera));1;2;

NELLA SECONDA funzione
che sara
=se(e(a<2; b=2(falsa);3;4)
la seconda espressione mi darà falsa

ma non riesco a capire come mai non me le fa legare!!!si puo fare??

MarcoGG
24-04-2008, 15:19
se a > 2 e b=1 deve restiturimi il valore 2 se no 3
se a> 2 e b= 2 deve restituirmi il valore 3 se no 4

il risultato si deve vedere nella stessa cella


Ma tu avevi scritto questo.
Adesso scrivi a<2...
Comunque, da quel che ho capito, la risposta è no.
Non puoi legare in una sola cella il risultato di 2 funzioni distinte.
Se ad esempio mettessi la seconda condizione sull'ELSE della prima, allora...

dario84m
24-04-2008, 15:21
Ma tu avevi scritto questo.
Adesso scrivi a<2...
Comunque, da quel che ho capito, la risposta è no.
Non puoi legare in una sola cella il risultato di 2 funzioni distinte.
Se ad esempio mettessi la seconda condizione sull'ELSE della prima, allora...

invece se volessi visualizzare solo il risultato vero??!!come posso fare??

dario84m
24-04-2008, 16:07
qualcuno sa come si scrive un valore trovato in visual basic editor in una cella specifica di excel??

dario84m
24-04-2008, 16:12
qualcuno mi aiuta :doh:

amedeoviscido
24-04-2008, 17:49
Probabilmente ho capito.

SE A>2 ALLORA
- SE B=1 -> RESTITUISCI 2
- SE B=2 -> RESTITUISCI 3
- ALTRIMENTI RESTITUISCI 4

Però come l'hai scritto, ti confesso, FA DAVVERO PENA!!!
L'unica cosa è: che succede se A è minore o uguale a 2?

Questa formula PRESUPPONE che A sia >2:
=SE(A>2 & B=1; 2; SE(A>2 & B=2; 3; SE(A>2 & B>2; 4; "O A e' minore o uguale a 2 oppure B e' minore di 1") ) )