Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

SE()... funzionasse sarebbe meglio

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

SE()... funzionasse sarebbe meglio

Postdi gaetano73 » 17/05/13 11:18

Ciao a tutti. Uso Excel 2007.

Le celle sono in formato "Formato generale".

Nella cella A1 ho il valore "02/01/2013 00.00".
Nella cella C1 ho la formula "=SINISTRA(A1;10)" che mi restituisce quello che voglio ovvero, "02/01/2013".
Nella cella E1 ho la formula "=SE($C1<"01/01/2013";"01/01/2013";SE($C1<="31/01/2013";$C1;0))" che mi dovrebbe restituire "01/01/2013" ma mi restituisce "02/01/2013".
Dove sbaglio?

Grazie
gaetano73
Utente Senior
 
Post: 247
Iscritto il: 03/09/02 18:36

Sponsor
 

Re: SE()... funzionasse sarebbe meglio

Postdi Anthony47 » 17/05/13 12:19

Faccio l' ipotesi che in A1 ci sia una data/ora, non una stringa.
In C1 metterai =Int(A1) per ottenere la data senza orario
Infine in E1 =SE($C1<DATA(2013;1;1);DATA(2013;1;1);SE($C1<=DATA(2013;12;31);$C1;0))

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: SE()... funzionasse sarebbe meglio

Postdi scossa » 17/05/13 12:31

gaetano73 ha scritto:la formula "=SE($C1<"01/01/2013";"01/01/2013";SE($C1<="31/01/2013";$C1;0))" che mi dovrebbe restituire "01/01/2013" ma mi restituisce "02/01/2013".
Dove sbaglio?


Perché dovrebbe restituirti 01/01/2013 visto che C1 NON è minore di 01/01/2013 ??
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 424
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: SE()... funzionasse sarebbe meglio

Postdi gaetano73 » 17/05/13 12:48

OK. Così funziona ma... non funziona. A questo punto allora deduco che è la logica che ho applicato che è sbagliata.
Il mio intento è questo. Ho due date, chiamiamole "Inizio" e "Fine" ("Inizio" non è mai > di "Fine", come è ovvio che sia)
Queste date possono essere qualsiasi. Io ho la necessità di "focalizzare" un preciso periodo (su arco temporale mensile).

Esempio1
Data Inizio: 30/12/2012
Data Fine: 06/06/2013
Periodo di "focalizzazione": Maggio
Data Inizio (del periodo maggio): mi deve risultare 01/05/2013
Data fine (del periodo maggio): mi deve risultare 31/05/2013

Esempio2
Data Inizio: 29/04/2013
Data Fine: 02/05/2013
Periodo di "focalizzazione": Maggio
Data Inizio (del periodo maggio): mi deve risultare 01/05/2013
Data fine (del periodo maggio): mi deve risultare 02/05/2013

Esempio3
Data Inizio: 29/04/2013
Data Fine: 02/05/2013
Periodo di "focalizzazione": Aprile
Data Inizio (del periodo aprile): mi deve risultare 29/04/2013
Data fine (del periodo aprile): mi deve risultare 30/04/2013
gaetano73
Utente Senior
 
Post: 247
Iscritto il: 03/09/02 18:36

Re: SE()... funzionasse sarebbe meglio

Postdi Gigi_ » 17/05/13 16:13

Ciao a tutti,
dunque
gaetano73 ha scritto:Ciao a tutti. Uso Excel 2007.

Le celle sono in formato "Formato generale".

Nella cella A1 ho il valore "02/01/2013 00.00".
Nella cella C1 ho la formula "=SINISTRA(A1;10)" che mi restituisce quello che voglio ovvero, "02/01/2013".
Nella cella E1 ho la formula "=SE($C1<"01/01/2013";"01/01/2013";SE($C1<="31/01/2013";$C1;0))" che mi dovrebbe restituire "01/01/2013" ma mi restituisce "02/01/2013".

gaetano73 ha scritto:Dove sbaglio?

=SE($C1> non =SE($C1< .......infatti ....
scossa ha scritto:Perché dovrebbe restituirti 01/01/2013 visto che C1 NON è minore di 01/01/2013 ??

...poi...
gaetano73 ha scritto:Esempio1
Data Inizio: 30/12/2012
Data Fine: 06/06/2013
Periodo di "focalizzazione": Maggio
Data Inizio (del periodo maggio): mi deve risultare 01/05/2013
Data fine (del periodo maggio): mi deve risultare 31/05/2013

Esempio2
Data Inizio: 29/04/2013
Data Fine: 02/05/2013
Periodo di "focalizzazione": Maggio
Data Inizio (del periodo maggio): mi deve risultare 01/05/2013
Data fine (del periodo maggio): mi deve risultare 02/05/2013

Esempio3
Data Inizio: 29/04/2013
Data Fine: 02/05/2013
Periodo di "focalizzazione": Aprile
Data Inizio (del periodo aprile): mi deve risultare 29/04/2013
Data fine (del periodo aprile): mi deve risultare 30/04/2013

allora, siccome non son bravo a spiegare allego questo file di esempio
http://www.mediafire.com/view/?o1geg8gsm9u634z
...sempre se ho ben compreso l'esigenza......(credo di si)... :)
Gigi_
win 7 + office 2003
Avatar utente
Gigi_
Utente Senior
 
Post: 340
Iscritto il: 14/11/09 21:51

Re: SE()... funzionasse sarebbe meglio

Postdi wallace&gromit » 17/05/13 16:26

io ho risolto in un modo un po' diverso da gigi, tutto con formule,
come lui ho A2: data inizio
B2 data fine
C2 mese focalizzazione (numerico)
in D2
Codice: Seleziona tutto
=DATA(ANNO(B2);C2;1)
ricava l'inizio della focalizzazione
in E2
Codice: Seleziona tutto
=DATA(ANNO(B2);C2+1;1)-1
ricava la fine della focalizzazione
in F2
Codice: Seleziona tutto
=SE(A2<D2;D2;A2)
la data di inizio effettivo
in G2
Codice: Seleziona tutto
=SE(B2>E2;E2;B2)
la data di fine effettivo
stato 2014: Office2003/2013 su win7
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1421
Iscritto il: 16/01/12 14:21

Re: SE()... funzionasse sarebbe meglio

Postdi gaetano73 » 18/05/13 22:28

Grazie!!!!! Ad entrambi ovviamente!
Nel mio file adotterò la soluzione di wallace&gromit ma la soluzione di Gigi mi ha aperto la mente per altre cosa che dovrò implementare... grazie ancora!
gaetano73
Utente Senior
 
Post: 247
Iscritto il: 03/09/02 18:36


Torna a Applicazioni Office Windows


Topic correlati a "SE()... funzionasse sarebbe meglio":


Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti