Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Funzione Se

198 views
Skip to first unread message

Giorgia

unread,
Jul 1, 2009, 12:54:57 PM7/1/09
to
Ciao a tutti.
Mi sono sempre cimentata con Access ma oggi ho scoperto che anche Excel ha
delle funzioni interessanti.

Ho dei problemi a capire come annullare la funzione Se per il suo valore
falso.
Cio�, vi spiego cosa vorrei ottenere:

se A1="DOMENICA"

SE VERO le celle B1, C1 e D1 saranno vuote (" ")
SE FALSO non fare nulla e rispettare i valori che verranno immessi nelle
celle B1, C1 e D1.

Pensavo, ingenuamente di cavarmela cos�

=se(A1="DOMENICA";" ";)

ma non funziona. Soprattutto dove dovrei inserire la funzione? in una cella
vuota? o in ciascuna cella che deve essere vuota in caso A1 fosse Domenica?
(cio� B1, C1 e D1?)

Grazie a chi avr� la pazienza di rispondere.
Non so se sono riuscita a spiegarmi

--
Giorgia


Tiziano Marmiroli

unread,
Jul 1, 2009, 4:41:44 PM7/1/09
to

Il Wed, 1 Jul 2009 18:54:57 +0200, Giorgia ha scritto:

>Ho dei problemi a capire come annullare la funzione Se per il suo valore
>falso.

Non � possibile 'annullare una funzione'.

>Cio�, vi spiego cosa vorrei ottenere:
>
>se A1="DOMENICA"
>
>SE VERO le celle B1, C1 e D1 saranno vuote (" ")

casomai ("")

>SE FALSO non fare nulla e rispettare i valori che verranno immessi nelle
>celle B1, C1 e D1.
>
>Pensavo, ingenuamente di cavarmela cos�
>
>=se(A1="DOMENICA";" ";)
>
>ma non funziona. Soprattutto dove dovrei inserire la funzione? in una cella
>vuota? o in ciascuna cella che deve essere vuota in caso A1 fosse Domenica?
>(cio� B1, C1 e D1?)

In ciascuna delle celle che devono essere vuote, ma *non* otterrai
comunque quanto hai descritto.

Come ti sei gi� resa conto una funzione si limita a restituire un valore
nella cella in cui � inserita, non pu� intervenire su altre celle o
eseguire altre operazioni. Se nelle celle sono presenti formule non puoi
andarci a inserire valori senza cancellare quelle formule.


Per ottenere quanto richiedi puoi ricorrere alla convalida dati:

seleziona B1, C1 e D1
Menu Dati> Convalida

Criteri di convalida
Consenti: Personalizzato
Formula:= $A$1<>"DOMENICA"

Ora i valori immessi in B1,C1 e D1 verranno 'convalidati', cio�
accettati, solo al verificarsi della formula immessa (ossia quando in A1
� presente un valore diverso da DOMENICA). Fino a che A1="DOMENICA" non
sar� possibile inserire valori in B1, C1 e D1 e quindi resteranno vuote.

N.B. La convalida impedisce di inserire nuovi valori, anche lei *non*
annulla niente... Se tu in A1 scrivi "LUNEDI'" e inserisci valori in B1,
C1 e D1 poi torni in A1 e ci scrivi "DOMENICA", B1,C1 e D1 manterranno
(per sempre...) i valori immessi, non si 'resetteranno'...

--
Tiziano Marmiroli
Microsoft MVP - Office System
http://www.riolab.org

Mauro Gamberini

unread,
Jul 1, 2009, 4:59:37 PM7/1/09
to
> Mi sono sempre cimentata con Access ma oggi ho scoperto che anche Excel ha
> delle funzioni interessanti.
>
> Ho dei problemi a capire come annullare la funzione Se per il suo valore
> falso.
> Cio�, vi spiego cosa vorrei ottenere:
>
> se A1="DOMENICA"
>
> SE VERO le celle B1, C1 e D1 saranno vuote (" ")
> SE FALSO non fare nulla e rispettare i valori che verranno immessi nelle
> celle B1, C1 e D1.
>
> Pensavo, ingenuamente di cavarmela cos�
>
> =se(A1="DOMENICA";" ";)
>
> ma non funziona. Soprattutto dove dovrei inserire la funzione? in una
> cella vuota? o in ciascuna cella che deve essere vuota in caso A1 fosse
> Domenica? (cio� B1, C1 e D1?)
>

Regola numero 1.
Non puoi utilizzare le funzioni di Excel
per modificare celle diverse da quelle
che contengono la funzione stessa.
Per stare al tuo esempio:

A1: Domenica
B1: =SE(A1="Domenica";"";"Quello che vuoi tu")
C1: =SE(A1="Domenica";"";"Quello che vuoi tu")
D1: =SE(A1="Domenica";"";"Quello che vuoi tu")

Inoltre, normalmente, le funzioni non
possono includere la cella stessa
nella quale si trovano.
Vuol dire che no posso scrivere:

B1: =Se(A1="Domenica";"";B1)
Perch� B1 contiene la funzione e non un
valore. Pensaci un attimino su e lo
capisci da sola.

Immagino(tu non lo dici) che utilizzassi codice
per lavorare con Access. Puoi farlo anche in Excel
utilizzando macro e UDF e non sei pi� limitata
alla funzioni native di Excel.

--
---------------------------
Mauro Gamberini
http://www.riolab.org/
http://blog.maurogsc.eu/

Giorgia

unread,
Jul 2, 2009, 3:27:32 AM7/2/09
to

"Giorgia" <gio...@vitaletrasporti.com> ha scritto nel messaggio
news:h2g4dj$gjj$1...@aioe.org...
Ringrazio per i preziosi chiarimenti, ci lavoro su.
Ho per� riscontrato un problema con la formattazione ORA, sembra che la
funzione Se non la rispetti.

Ho questa funzione in una cella formato ORA

=SE(A6="SABATO";" ";"8.00")

ma le 8 non vengono considerate come ore ma come numero. anzi nemmeno come
numero perch� la somma della colonna non viene restituita.

Bisogna indicare nella funzione Se la stringa di formattazione della cella?

Giorgia


Giorgia

unread,
Jul 2, 2009, 4:13:08 AM7/2/09
to

> Ringrazio per i preziosi chiarimenti, ci lavoro su.
> Ho per� riscontrato un problema con la formattazione ORA, sembra che la
> funzione Se non la rispetti.
>
> Ho questa funzione in una cella formato ORA
>
> =SE(A6="SABATO";" ";"8.00")
>
> ma le 8 non vengono considerate come ore ma come numero. anzi nemmeno come
> numero perch� la somma della colonna non viene restituita.
>
> Bisogna indicare nella funzione Se la stringa di formattazione della
> cella?
>
> Giorgia
>
Scusate, ho provato a cancellare e riscrivere la formula e a rimpostare la
formattazione delle celle e tuttuo funziona.
Buona giornata.

Giorgia


Giorgia

unread,
Jul 2, 2009, 4:26:26 AM7/2/09
to

"Giorgia" <gio...@vitaletrasporti.com> ha scritto nel messaggio
news:h2hq6o$2mr$1...@aioe.org...

No, mi sbagliavo, la somma delle ore non viene calcolata se il valore 08.00
viene prelevato dalla funzione SE seguente

=SE(A4<>"SABATO";SE(A4<>"DOMENICA";"08.00";"0.00");"0.00")

come posso risolvere?

Grazie, Giorgia


ettore50

unread,
Jul 2, 2009, 6:19:52 AM7/2/09
to
"Giorgia" <gio...@vitaletrasporti.com> ha scritto nel messaggio
news:h2g4dj$gjj$1...@aioe.org...

=SE(H2=0;"Domenica";SE(H2=1;"Luned�";SE(H2=2;"Marted�";SE(H2=3;"Mercoled�";SE(H2=4;
Ciao Giorgia.
H2 = =TRONCA(D1+1,5)-7*TRONCA((D1+1,5)/7)

Mauro Gamberini

unread,
Jul 2, 2009, 10:02:57 AM7/2/09
to

> =SE(A4<>"SABATO";SE(A4<>"DOMENICA";ORARIO(8;0;0);ORARIO(0;0;0));ORARIO(0;0;0))
>
> =SE(A4<>"SABATO";SE(A4<>"DOMENICA";8/24;0);0)
>

=SE(E(A4<>"SABATO";A4<>"DOMENICA");8/24;0)

Tiziano Marmiroli

unread,
Jul 2, 2009, 9:57:08 AM7/2/09
to

Il Thu, 2 Jul 2009 10:26:26 +0200, Giorgia ha scritto:

>=SE(A4<>"SABATO";SE(A4<>"DOMENICA";"08.00";"0.00");"0.00")

=SE(A4<>"SABATO";SE(A4<>"DOMENICA";ORARIO(8;0;0);ORARIO(0;0;0));ORARIO(0;0;0))

=SE(A4<>"SABATO";SE(A4<>"DOMENICA";8/24;0);0)

--

Tiziano Marmiroli

unread,
Jul 2, 2009, 10:33:50 AM7/2/09
to

Il Thu, 2 Jul 2009 16:02:57 +0200, Mauro Gamberini ha scritto:

>> =SE(A4<>"SABATO";SE(A4<>"DOMENICA";ORARIO(8;0;0);ORARIO(0;0;0));ORARIO(0;0;0))
>>
>> =SE(A4<>"SABATO";SE(A4<>"DOMENICA";8/24;0);0)

>=SE(E(A4<>"SABATO";A4<>"DOMENICA");8/24;0)

=(A4<>"SABATO")*(A4<>"DOMENICA")*1/3 :-)

Mauro Gamberini

unread,
Jul 2, 2009, 10:48:16 AM7/2/09
to

> =(A4<>"SABATO")*(A4<>"DOMENICA")*1/3 :-)
>

Me morto.

0 new messages