Risultati da 1 a 28 di 28

Discussione: Esercitazione domenicale (lato formule)



  1. #1
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Esercitazione domenicale (lato formule)

    Buonasera a tutti
    Mi è capitato di giochicchiare con le date e mi son impegnato a trovare una formula che risolvesse il sottostante quesito:
    Excel 2007 32 bit
    A
    B
    C
    D
    1
    Schema
    2
    Data e ora inizio
    Data e ora fine
    differenza fra le date e orari
    Risultato atteso
    3
    05/06/2016 0.00
    05/06/2016 0.00
    zero anni 0, mesi 0, giorni 0 + ore 00:00
    4
    05/06/2016 0.00
    06/06/2016 0.00
    1 giorno anni 0, mesi 0, giorni 1 + ore 00:00
    5
    05/06/2016 0.00
    05/07/2016 0.00
    1 mese anni 0, mesi 1, giorni 0 + ore 00:00
    6
    05/06/2016 0.00
    05/06/2017 0.00
    1 anno anni 1, mesi 0, giorni 0 + ore 00:00
    7
    05/06/2016 0.00
    06/07/2016 0.00
    1 giorno e 1 mese anni 0, mesi 1, giorni 1 + ore 00:00
    8
    05/06/2016 0.00
    06/06/2017 0.00
    1 giorno e 1 anno anni 1, mesi 0, giorni 1 + ore 00:00
    9
    05/06/2016 0.00
    06/07/2017 0.00
    1 giorno, 1 mese e 1 anno anni 1, mesi 1, giorni 1 + ore 00:00
    10
    05/06/2016 0.00
    05/06/2016 8.00
    8 ore anni 0, mesi 0, giorni 0 + ore 08:00
    11
    05/06/2016 0.00
    06/06/2016 8.00
    1 giorno e 8 ore anni 0, mesi 0, giorni 1 + ore 08:00
    12
    05/06/2016 0.00
    05/07/2016 8.00
    1 mese e 8 ore anni 0, mesi 1, giorni 0 + ore 08:00
    13
    05/06/2016 0.00
    05/06/2017 8.00
    1 anno e 8 ore anni 1, mesi 0, giorni 0 + ore 08:00
    14
    05/06/2016 0.00
    06/07/2016 8.00
    1 giorno e 1 mese e 8 ore anni 0, mesi 1, giorni 1 + ore 08:00
    15
    05/06/2016 0.00
    06/06/2017 8.00
    1 giorno e 1 anno e 8 ore anni 1, mesi 0, giorni 1 + ore 08:00
    16
    05/06/2016 0.00
    06/07/2017 8.00
    1 giorno, 1 mese e 1 anno e 8 ore anni 1, mesi 1, giorni 1 + ore 08:00
    17
    05/06/2016 0.00
    14/11/2018 9.30
    altro anni 2, mesi 5, giorni 9 + ore 09:30
    Sheet: Foglio1

    Non è affatto difficile (ci son riuscito io che con le formule non vado molto d'accordo) basta ragionare un po' sul da farsi.

    Ovvio che i Guru e gli esperti troveranno subito la soluzione ma li pregherei di aspettare domani dopo le ore 16.00 per dar modo agli altri di risolvere.

    Ciao a tutti e ... buon divertimento,
    Mario

  2. I seguenti utenti hanno dato un "Mi Piace"


  3. #2
    L'avatar di G.Bove
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Milano
    Età
    51
    Messaggi
    638
    Versione Office
    2010
    Mi Piace ricevuti
    26
    Mi Piace dati
    138

    Re: Esercitazione domenicale (lato formule)

    Ciao Mario,
    ci provo:
    Codice: 
    =ANNO(B3)-ANNO(A3)-SE(O(MESE(B3)<MESE(A3);E(MESE(B3)=MESE(A3);GIORNO(B3)
    <GIORNO(A3)));1;0)&"a "&MESE(B3)-MESE(A3)+SE(E(MESE(B3)<=MESE(A3);
    GIORNO(B3)<GIORNO(A3));11;SE(E(MESE(B3)<MESE(A3);
    GIORNO(B3)>=GIORNO(A3))*0,12;SE(E(MESE(B3)<MESE(A3);
    GIORNO(B3)<GIORNO(A3));-1)))&"m "&B3-DATA(ANNO(B3);MESE(B3)-SE(GIORNO(B3)
    <GIORNO(A3);1;0);GIORNO(A3))&"g"
    Gene
    PS Se non è giusta...almeno il premio della velocità......

  4. #3
    L'avatar di Oregon
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    22
    Versione Office
    2007
    Mi Piace ricevuti
    8
    Mi Piace dati
    0

    Re: Esercitazione domenicale (lato formule)

    Io direi di dare un'occhiata a questa discussione e alla soluzione esposta alla fine

    http://forum.masterdrive.it/excel-80...61/index2.html

  5. #4
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Re: Esercitazione domenicale (lato formule)

    Ciao Oregon
    premesso che non mi sono assunto nessuna "paternità" di formule, che ho proposto un "passatempo domenicale", che non ho "imposto" a nessuno di intervenire, che ho partecipato in prima persona a quella discussione, che il mio intendimento era quello di "far crescere" chi non conosce tanto le formule,
    tutto ciò premesso il tuo intervento mi sembra un tantino ... OT.

    Credo, fra l'altro, che quella formula alla quale di riferisci (peraltro mancante dell'orario) non sia la solo per risolvere il passatempo.

    Ciao e senza rancore,
    Mario

  6. I seguenti utenti hanno dato un "Mi Piace"


  7. #5
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Re: Esercitazione domenicale (lato formule)

    Ciao Gene
    La formula suggerita, oltre ad essere un pochino lunga, potrebbe andar bene quando gli orari sono uguali, se sono differenti ti dà la frazione di giorno e non indica a parte le ore.
    Comunque un plauso per la velocità

    Ciao,
    Mario

  8. #6
    L'avatar di Oregon
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    22
    Versione Office
    2007
    Mi Piace ricevuti
    8
    Mi Piace dati
    0

    Re: Esercitazione domenicale (lato formule)

    Non ho detto che ti sei assunto alcuna paternità ... Ho solo fatto qualche ricerca e ho letto quella soluzione che ho voluto segnalare per non farla passare come mia. Quindi non mi pare proprio che la mia risposta sia OT e non vedo perché tu parli di rancore ... Buona domenica

  9. #7

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    36
    Messaggi
    2739
    Versione Office
    2016
    Mi Piace ricevuti
    782
    Mi Piace dati
    669

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da Oregon Visualizza Messaggio
    Non ho detto che ti sei assunto alcuna paternità ... Ho solo fatto qualche ricerca e ho letto quella soluzione che ho voluto segnalare per non farla passare come mia. Quindi non mi pare proprio che la mia risposta sia OT e non vedo perché tu parli di rancore ... Buona domenica
    Ciao a tutti,

    @Oregon
    credo vi siate fraintesi...
    comunque il tuo intervento sembrava quasi un accusa di "plagio" o quantomeno di un possibile "cross-posting" (cosa che in un quiz non è assolutamente contemplata).
    Questo credo sia il motivo dello "sdegno" di Marius (che saluto ).

    Ma come ho detto prima, non credo ci siano le basi per aprirne una discussione...anzi, anche se hai già letto una probabile soluzione, prova a "farla tua" (magari cambiando qualcosina) e partecipando così al "quiz domenicale"

    Ciao
    Tore

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  10. #8
    L'avatar di Oregon
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    22
    Versione Office
    2007
    Mi Piace ricevuti
    8
    Mi Piace dati
    0

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    comunque il tuo intervento sembrava quasi un accusa di "plagio" o quantomeno di un possibile "cross-posting" (cosa che in un quiz non è assolutamente contemplata).
    Né l'una né, tanto meno, l'altra (che c'entra il crossposting?).

    Questo credo sia il motivo dello "sdegno" di Marius
    Addirittura "sdegno" ... spero tu stia scherzando ...

    Ma come ho detto prima, non credo ci siano le basi per aprirne una discussione...
    Infatti ... non volevo che nessuno aprisse nessuna discussione ... ho solo segnalato una soluzione senza farla passare per mia, ovvero indicando dove l'avevo letta.

    Probabilmente l'onestà non paga.

    Adesso mi taccio ... buonanotte.

  11. #9
    L'avatar di Gianfranco55
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Vicenza
    Età
    61
    Messaggi
    661
    Versione Office
    2016
    Mi Piace ricevuti
    224
    Mi Piace dati
    45

    Re: Esercitazione domenicale (lato formule)

    Ciao

    Codice: 
    =" anni "&ANNO(B2)-ANNO(A2)&",  mesi "&MESE(B2)-MESE(A2)&", giorni "&GIORNO(B2)-GIORNO(A2)&" + ore "&TESTO(ORARIO(ORA(B2);MINUTO(B2);SECONDO(B2))-ORARIO(ORA(A2);MINUTO(A2);SECONDO(A2));"hh:mm")
    che è la stessa consigliata da Oregon leggermente accorciata

    Codice: 
    ="anni "&TESTO(DATA.DIFF(A2;B2;"y");"0")&", mesi "&TESTO(DATA.DIFF(A2;B2;"ym");"0")&", giorni "&TESTO(DATA.DIFF(A2;B2;"md");"0")&" + ore "&TESTO(ORARIO(ORA(B2);MINUTO(B2);SECONDO(B2))-ORARIO(ORA(A2);MINUTO(A2);SECONDO(A2));"hh:mm")
    chiaro che ho aggiunto la differenza ore tra i giorni

    dovrei esserci

    Marius
    fai i tranelli?

    hai formattato l'orario della tabella con hh.mm
    e vuoi la risposta in hh:mm

  12. #10

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    36
    Messaggi
    2739
    Versione Office
    2016
    Mi Piace ricevuti
    782
    Mi Piace dati
    669

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da Oregon Visualizza Messaggio
    Né l'una né, tanto meno, l'altra (che c'entra il crossposting?).



    Addirittura "sdegno" ... spero tu stia scherzando ...



    Infatti ... non volevo che nessuno aprisse nessuna discussione ... ho solo segnalato una soluzione senza farla passare per mia, ovvero indicando dove l'avevo letta.

    Probabilmente l'onestà non paga.

    Adesso mi taccio ... buonanotte.
    Ma hai letto TUTTO quello che ho scritto o hai solo usato un STRINGA.ESTRAI ?

    Citazione Originariamente Scritto da cromagno
    anche se hai già letto una probabile soluzione, prova a "farla tua" (magari cambiando qualcosina) e partecipando così al "quiz domenicale"
    dopo... sta a te voler partecipare.

    Notte

    [EDIT]

    Giusto per chiarire...

    Addirittura "sdegno" ... spero tu stia scherzando ...
    tralasciando che "sdegno" è stato messo appositamente tra le virgolette, il suo significato è anche:
    disappunto, disapprovazione etc...
    quindi non capisco quel "spero tu stia scherzando"...

    Comunque... a domani.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  13. #11
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    ciao
    prima di pubblicare altre soluzioni vi segnalo due aspetti che complicano la faccenda:

    1) alcuni bug di DATA.DIFF(), es. da 31/3/2016 a 01/05/2016 (dovrebbe dare anni 0 mesi 1 giorni1)
    2) differenze fra orari minori meno orari maggiori esempio:
    inizio 30/04/2016 09:00:00 fine 01/06/2016 08:00:00
    risultato
    anni 0, mesi 1, giorni 0 + ore 23:00

    per il resto, buon proseguimento

    ci sentiamo più tardi
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  14. #12
    L'avatar di Gianfranco55
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Vicenza
    Età
    61
    Messaggi
    661
    Versione Office
    2016
    Mi Piace ricevuti
    224
    Mi Piace dati
    45

    Re: Esercitazione domenicale (lato formule)

    Ciao Ninai
    gentilmente hai detto che ho scritto una
    alla Fantozzi " cagata pazzesca"

    e hai ragione

  15. #13

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    3986
    Versione Office
    2011/2016MAC
    Mi Piace ricevuti
    1253
    Mi Piace dati
    755

    Re: Esercitazione domenicale (lato formule)

    Ciao a tutti,
    ognuno ha un approccio diverso per ottenere lo stesso risultato, io ho usato questo per come previsto nella colonna D:

    ="anni " & INT(FRAZIONE.ANNO(SOSTITUISCI(B1;".";":");SOSTITUISCI(A1;".";":");1))&", mesi "&MESE(SINISTRA(B1;10))-MESE(SINISTRA(A1;10))&", giorni "&GIORNO(SINISTRA(B1;10))-GIORNO(SINISTRA(A1;10))&" + ore 0"&SOSTITUISCI(SOSTITUISCI(ANNULLA.SPAZI(DESTRA(B1;5));".";",");",";":")
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  16. I seguenti utenti hanno dato un "Mi Piace"


  17. #14
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    ciao
    do la mia versione:
    =" anni "&INT(GIORNO360(A3;B3)/360)&", mesi "&RESTO(INT(GIORNO360(A3;B3)/30);12)&", giorni "&RESTO(GIORNO360(A3;B3);30)-(RESTO(A3;1)>RESTO(B3;1))&" + ore "&TESTO(RESTO(B3-A3;1);"hh:mm")

    ges
    forse è colpa della mia ricostruzione della tabella proposta (non sono riuscito ad importarla) ma la tua soluzione, oltre che discordante, mi da le ore in formato anomalo (credo decimale senza virgola).

    vi invito a provare su queste date:
    31/3/16 0.00 1/5/16 0.00

    30/4/16 9.00 1/6/16 8.00
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  18. I seguenti utenti hanno dato un "Mi Piace"


  19. #15

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    3986
    Versione Office
    2011/2016MAC
    Mi Piace ricevuti
    1253
    Mi Piace dati
    755

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    ....
    ges
    forse è colpa della mia ricostruzione della tabella proposta (non sono riuscito ad importarla) ma la tua soluzione, oltre che discordante, mi da le ore in formato anomalo (credo decimale senza virgola).
    ...
    Ciao Ninai,
    la mia importazione mi ha creato i dati che riporto nel file allegato, che deve essere diverso da quello che hai tu, infatti la tua formula non mi funziona.
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  20. #16
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    boh, sarà un problema di formato, non caoisco, invio il mio, restano comunque le divergenze nei calcoli proposti.

    https://www.dropbox.com/s/o9o7zl25ci...quiz.xlsx?dl=0
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  21. #17

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    3986
    Versione Office
    2011/2016MAC
    Mi Piace ricevuti
    1253
    Mi Piace dati
    755

    Re: Esercitazione domenicale (lato formule)

    @ninai: infatti i formati dei nostri due files non sono uguali.

    Il tuo ha le date/ore formattate 05/06/2016 00:00:00 mentre il mio è riconosciuto come testo 05/06/2016 0.00 (così l'aveva postato Mario)

    L'ideale quando si ha a che fare con le ore o date è allegare il file

    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  22. #18
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Re: Esercitazione domenicale (lato formule)

    Amiche ed amici buonasera.

    Inizio col darvi la formula da me elaborata (basata su quella di cui al sito segnalato da Oregon – che saluto) con qualche spiegazione (per i neofiti)
    Premessa: giorno e ora inizio in A2; giorno e ora fine in B2
    =SE(ORA(B2)<ORA(A2);
    "anni "&DATA.DIFF(A2;B2-1;"Y")&" mesi "&DATA.DIFF(A2;B2-1;"YM")&" giorni " & DATA.DIFF (A2;B2-1;"MD");
    "anni "&DATA.DIFF(A2;B2;"Y")&" mesi "&DATA.DIFF(A2;B2;"YM")&" giorni " & DATA.DIFF (A2;B2;"MD"))
    & " + ore "&TESTO(B2-A2;"hh:mm")

    Inizio col confrontare gli orari delle due date.
    Se ora-data-fine < ora_data_inizio
    Questa condizione è basilare perché occorre conoscere se abbiamo completato le 24 ore del giorno di inizio oppure no e, in questa seconda ipotesi, diminuisco la data finale di 1 giorno.
    Quindi se vero, eseguo i successivi calcoli (per anni, mesi e giorni) su questa nuova ipotetica data.
    SE, invece, falso eseguo i calcoli sulle date indicate.
    La parte riguardante il calcolo orario è uguale in entrambi i casi sopra esposti.

    In merito ai possibili “bugs” della funzione “nascosta” DATA.DIFF() io non ne ho trovati: bisogna porre molta attenzione a cosa – le famigerate lettere fra doppi apici - si chiede di calcolare.

    Allego file in cui ho aggiunto i risultati che dà la formula in merito ai “casi particolari” segnalati da ninai (ciao Santo); nel Foglio1 ho inserito le risposte degli intervenuti.

    In merito alle discordanze tra la mia formula e quella di ninai forse sono dovute (ma tiro quasi ad indovinare) alla possibilità che la funzione DATA.DIFF() "conosce" di quanti giorni è formato un mese e si comporta di conseguenza.

    E adesso sotto con le critiche (mi aspetto quelle di scossa, Canapone e Dracoscrigno e, in aggiunta, quelle di qualche Guru che sta nascosto - cromagno, Rubik, Pkrome e mi scuso con quelli che ho dimenticato).

    Ciao,
    Mario
    File Allegati File Allegati

  23. #19
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Re: Esercitazione domenicale (lato formule)

    Salve
    una piccola aggiunta (ma non so se Excel tiene conto della Legge)
    Leggete cosa si dice in questo sito:

    http://www.laleggepertutti.it/125643...e-dies-ad-quem

    I latini antichi affermavano: “Dies a quo non computatur in termino, dies ad quem computatur”, frase contenente il principio secondo il quale nel computo dei termini “a giorni”, il giorno iniziale (cosiddetto dies a quo) non si calcola, mentre il giorno finale (cosiddetto dies ad quem) si deve calcolare.

    Ciao a tutti, Mario

  24. #20
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    ciao, vediamo se riesco a spiegare il problema del bug:

    se dal 31/03/2016 al 01/04/2016 è trascorso un giorno
    dal 31/03/2016 al 01/05/2016 deve essere un mese + un giorno

    infatti anche la mia toglie un giorno , come gli antichi latini, però la tua (vostra) ne toglie due.
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  25. #21
    L'avatar di Anthony
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Ivrea (TO)
    Età
    26
    Messaggi
    284
    Versione Office
    2003-2010-2016
    Mi Piace ricevuti
    203
    Mi Piace dati
    33

    Re: Esercitazione domenicale (lato formule)

    Mi accodo per proporre la mia formula:
    Codice: 
    ="Anni "&MAX(SE(RESTO(A2;1)+DATA.MESE(A2;12*(RIF.RIGA($A$1:$A$15)))<=B2;RIF.RIGA($A$1:$A$15);""))&", Mesi "&MAX(SE(RESTO(A2;1)+DATA.MESE(A2;12*(MAX(SE(DATA.MESE(A2;12*(RIF.RIGA($A$1:$A$15)))<=B2;RIF.RIGA($A$1:$A$15);"")))+RIF.RIGA($A$1:$A$17))<=B2;RIF.RIGA($A$1:$A$17);""))&", Giorni "&MAX(SE((RESTO(A2;1)+DATA.MESE(A2;12*MAX(SE(RESTO(A2;1)+DATA.MESE(A2;12*(RIF.RIGA($A$1:$A$15)))<=B2;RIF.RIGA($A$1:$A$15);""))+MAX(SE(RESTO(A2;1)+DATA.MESE(A2;12*(MAX(SE(RESTO(A2;1)+DATA.MESE(A2;12*(RIF.RIGA($A$1:$A$15)))<=B2;RIF.RIGA($A$1:$A$15);"")))+RIF.RIGA($A$1:$A$17))<=B2;RIF.RIGA($A$1:$A$17);"")))+RIF.RIGA($A$1:$A$36))<=B2;RIF.RIGA($A$1:$A$36);""))&" + ore "&TESTO(ASS(1+RESTO(B2;1)-RESTO(A2;1));"hh:mm")
    Da confermare con Contr-Maiusc-Enter, non il solo Enter.
    Volutamente ha un limite su 15 anni, ma si puo' portare fino a 100-1000-10000 anni senza problemi.

    Non lasciatevi impressionare, se la scomponete vedrete che i termini sono semplici e ripetitivi.
    Ci sarebbe in realta' bisogno di "sistemare" tutti i Rif.Riga(Intervallo) in Rif.Riga(Indiretto("xx:yy")), ma per la demo e' sufficiente così.

    Mi permetto anche di pubblicare un file con cui ho comparato i risultati delle varie proposte: https://www.dropbox.com/s/0qjdn02ijx...1009.xlsm?dl=0

    Ovviamente ho incluso un limitato e non esaustivo elenco di incongruenze.

    Ciao

  26. I seguenti 3 utenti hanno dato un MI Piace a Anthony per questo post:


  27. #22
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    Bel lavoro Anthony
    sono concordo quasi su tutto, ricordavo che sta procedura aveva ancora dei tarli.

    Un punto ancora "ambiguo", sono gli intervalli con inizio fine mese da 30 (aprile, giugno,settembre, novembre).
    esempio
    30/4/2016 - 1/6/2016
    la tua restituisce 1 mese e 2 giorni
    la mia 1 mese e 1 giorno

    inoltre, fra la tua formula e la macro, in questi casi, nascono differenze
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  28. #23
    L'avatar di Anthony
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Ivrea (TO)
    Età
    26
    Messaggi
    284
    Versione Office
    2003-2010-2016
    Mi Piace ricevuti
    203
    Mi Piace dati
    33

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da ninai Visualizza Messaggio
    Bel lavoro Anthony
    sono concordo quasi su tutto, ricordavo che sta procedura aveva ancora dei tarli.

    Un punto ancora "ambiguo", sono gli intervalli con inizio fine mese da 30 (aprile, giugno,settembre, novembre).
    esempio
    30/4/2016 - 1/6/2016
    la tua restituisce 1 mese e 2 giorni
    la mia 1 mese e 1 giorno

    inoltre, fra la tua formula e la macro, in questi casi, nascono differenze
    Eh, la mia formula restituisce 1m 2gg perche' con +1mese arrivo al 30 maggio; poi fino all'1 giugno ci vogliono appunto altri 2 gg.

    A conferma che contare a mesi e' alquanto "peloso".

    Non ho capito di quale macro parli.
    Ciao!

  29. #24
    L'avatar di ninai
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Barcellona P.G.
    Età
    54
    Messaggi
    1499
    Versione Office
    2010 PC
    Mi Piace ricevuti
    789
    Mi Piace dati
    154

    Re: Esercitazione domenicale (lato formule)

    mah, continuo ad essere dubbioso.
    Dipende da quali presupposti partiamo, se devo differenziare i mesi in base alla loro lunghezza, allora maggio è di 31 giorni. Potrei pensare che dal 30/4 al 1/5 vi è un giorno, pertanto dal 30/4 al 1/6 vi è un giorno più un mese.
    Secondo me, la mia pecca in quelli con inizio in febbraio e mesi da 31, la tua in quelli di 30.
    "So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")

  30. #25

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    3986
    Versione Office
    2011/2016MAC
    Mi Piace ricevuti
    1253
    Mi Piace dati
    755

    Re: Esercitazione domenicale (lato formule)

    Bel lavoro Antony, grazie.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  31. #26
    L'avatar di Anthony
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Ivrea (TO)
    Età
    26
    Messaggi
    284
    Versione Office
    2003-2010-2016
    Mi Piace ricevuti
    203
    Mi Piace dati
    33

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da ges Visualizza Messaggio
    Bel lavoro Antony, grazie.
    Grazie ges per il tuo apprezzamento.

    Intanto ho modificato il file inserendo un'area per testare una specifica formula (il link e' quello gia' pubblicato); vedere D3 e adiacenti in Foglio2, e le istruzioni in foglio Istruzioni.

    Tutto questo pero' si basa sul ragionamento che ho adottato io, che utilizza la formula Data.Mese.
    Secondo questo ragionamento dal 30 aprile al 1 giugno passano 1 mese e 2 gg: con 1 mese arrivo al 30 maggio; altri 2 gg e arrivo al 1° giugno.
    Ma ad esempio ninai ragiona che dopo 1 mese da fine aprile si arriva a fine maggio, quindi serve solo 1 gg per arrivare al 1° giugno: ha una logica anche questo ragionamento! (anche se allora si arriva al paradosso che dal 30 aprile in 1mese si arriva sia al 30 maggio che al 31 maggio).

    Quindi anche il file pubblicato va preso come un gioco e non come un metro per separare il giusto dall'errato; come pure un gioco va considerato il cercare la formula piu' precisa per gestire una misura che e' per sua natura vaga e approssimata (la differenza in mesi).

    Ciao a tutti!

  32. #27
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    72
    Messaggi
    1562
    Versione Office
    Excel2007
    Mi Piace ricevuti
    398
    Mi Piace dati
    99

    Re: Esercitazione domenicale (lato formule)

    Salve a tutti
    Non mi sono defilato! Sono stato impegnato con nipotini, malattie di stagione di parenti anziani (immaginate, più anziani di me) ed in mezzo anche un funerale (può capitare a chiunque - fate i debiti scongiuri - ma statisticamente tocca a chi ha oltrepassato gli ... anta).

    Che dire! Sono esterrefatto!
    Quello che a me sembrava un giochino, ha coinvolto (oltre alla manovalanza come me) Esperti, Guru e SuperGuru.

    Doverosi complimenti (meritatissimi) a Anthony ed a Ninai per le soluzioni (corrette? Boh!) e per gli spunti di discussione proposti.

    Su molti punti concordo ma su alcuni resto dubbioso.
    Dissento su un punto
    cercare la formula piu' precisa per gestire una misura che e' per sua natura vaga e approssimata (la differenza in mesi)
    .
    Non riesco ad immaginare i soloni di Richmond a "non ragionare" in termini di giorni/mesi/anni, cioè tempi variabili ma definiti, precisi, computabili.

    In altro sito è stato consigliato ad un richiedente di "lasciar perdere VBA per queste cose". Anche su questo non sono d'accordo e, a tempo (per restare in tema) perso, mi procurerò il piacere di provare.

    Non metterei ancora il RISOLTO sperando in qualche ulteriore sviluppo.

    Ciao a tutti,
    Mario

  33. #28
    L'avatar di Anthony
    Clicca e Apri
    Data Registrazione
    Sep 2016
    Località
    Ivrea (TO)
    Età
    26
    Messaggi
    284
    Versione Office
    2003-2010-2016
    Mi Piace ricevuti
    203
    Mi Piace dati
    33

    Re: Esercitazione domenicale (lato formule)

    Citazione Originariamente Scritto da Marius44 Visualizza Messaggio
    . . .
    Dissento su un punto .
    cercare la formula piu' precisa per gestire una misura che e' per sua natura vaga e approssimata (la differenza in mesi)

    Non riesco ad immaginare i soloni di Richmond a "non ragionare" in termini di giorni/mesi/anni, cioè tempi variabili ma definiti, precisi, computabili.

    In altro sito è stato consigliato ad un richiedente di "lasciar perdere VBA per queste cose". Anche su questo non sono d'accordo e, a tempo (per restare in tema) perso, mi procurerò il piacere di provare.

    Non metterei ancora il RISOLTO sperando in qualche ulteriore sviluppo.

    Ciao a tutti,
    Mario
    In un mondo in cui il Secondo non e' piu' definito come 1/86400 della durata del giorno medio solare, ne' come 1/31 556 925,9747 della durata dell'anno tropico, ma come la durata pari a 9192631770 periodi di una transizione atomica del Cesio 133, che dire del mese se non che e' una unita' di misura vaga e grossolana?

    Una Udf semplice semplice che restituisce lo stesso risultato della mia formula potrebbe essere questa:
    Codice: 
    Function YMDHdelta(ByVal sDate As Range, ByVal eDate As Range) As String
    Dim iDate As Date, YY As Long, MM As Long, DD As Long
    Dim iHH As Double, eHH As Double, HH As String, Mux As Long
    '
    eHH = eDate - Int(eDate)
    iHH = sDate - Int(sDate)
    iDate = sDate
    Mux = 12
    'Calcolo Y & M:
    For i = 1 To 100
        iDate = Application.WorksheetFunction.eDate(iDate, Mux) + iHH
        If iDate > eDate Then
            iDate = Application.WorksheetFunction.eDate(iDate, -Mux) + iHH
            If Mux = 1 Then Exit For
            Mux = 1
            i = 0
        Else
            If Mux = 12 Then YY = YY + 1 Else MM = MM + 1
        End If
    Next i
    For DD = 1 To 31
        iDate = iDate + 1
        If iDate > eDate Then
            iDate = iDate - 1
            Exit For
        End If
    Next DD
    'Ore residue:
    HH = Format(1 + eHH - iHH, "hh:mm")
    '
    YMDHdelta = "Anni " & YY & ", Mesi " & MM & ", Giorni " & DD - 1 & " + ore " & HH
    '
    End Function
    Poi si scrive la formula =YMDHdelta(DataInizio; DataFine)

    L'ho aggiunta nel file gia' pubblicato, reperibile sempre qui: https://www.dropbox.com/s/0qjdn02ijx...1009.xlsm?dl=0

    Ciao

Discussioni Simili

  1. Problema esercitazione Excel
    Di ama1990 nel forum Domande su Excel in generale
    Risposte: 22
    Ultimo Messaggio: 27/11/16, 21:31
  2. [Risolto] Problema formule matriciali: risultati diversi per formule uguali
    Di matrix nel forum Domande su Excel in generale
    Risposte: 3
    Ultimo Messaggio: 20/11/16, 23:28
  3. VBA o formule?
    Di Amerigo nel forum Giochi con Excel
    Risposte: 8
    Ultimo Messaggio: 12/09/16, 19:45
  4. Formule
    Di Franco nel forum Domande su Excel in generale
    Risposte: 44
    Ultimo Messaggio: 12/10/15, 16:58
  5. filtro per formule
    Di Stefano nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 04/06/15, 07:27

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •