Sommare giorni commerciali 360



  • Sommare giorni commerciali (360)
    di daidardi data: 09/09/2016 12:48:04

    Salve,
    volevo chiedervi aiuto per un'operazione che vorrei effettuare.

    In sostanza ho la necessità di sommare dei giorni ad una data secondo il criterio dei giorni commerciali (360).

    Mi spiego meglio.. conosco la funzione =giorni360 che però permette solo il conteggio da una data all'altra.
    Ho Data1 e Data2 - mi calcola i gg360

    Invece a me servirebbe il contrario:
    Ho Data1 e gg360 - calcolare Data2

    Grazie dell'attenzione e spero qualcuno possa essere d'aiuto!
    Antonio



  • di santuberto (utente non iscritto) data: 09/09/2016 13:13:54

    Buongiorno. Forse (e ripeto forse), se alleghi un file con le due date ed il risultato desiderato... forse posso aiutarti.



  • di daidardi data: 09/09/2016 15:22:35

    Come richiesto... allego.. ;)



  • di gaetanopr data: 09/09/2016 17:04:08

    Prova questa formula
     
    =DATA.MESE(B2;TRONCA(B3/30))+B3-(TRONCA(B3/30)*30)



  • di Gianfranco data: 09/09/2016 17:52:58

    ciao
    sia che usi la formula di Gaetano
    o quella di Ninai (vedi altro forum)

    non può uscirti 01/11/2017
    ma ti uscirà 31/10/2017
    per avere 01/11/2017 devi avere 467 giorni che corrispondono a 135 settimane
    tu ne hai 134.6

    non che sia importante ma per curiosità



  • di daidardi data: 09/09/2016 19:06:41

    @Gaetanopr
    Grazie!!!!! Anche se devo studiarmi un po' le funzioni perchè non ci sto capendo molto.. e purtroppo (o per fortuna) sono il tipo che vuole capire "come funziona una cosa che funziona" ;)

    @Gianfranco
    mi spii ?? :D :D

    -Per ovviare al problema del giorno che "va scappando" c'è modo di arrotondarlo ?
    -Oppure basta semplicemente aggiungere al tutto un "+1" ?
    -infine.. anche se capisco potrebbe essere odiosa come richiesta (e capirei nel momento in cui mi diceste di vedermela da solo) mi spighereste il ragionamento che sta dietro alla formula per comprenderla meglio ?

    Grazie!!! :P



  • di gaetanopr data: 09/09/2016 20:47:31

    La formula è abbastanza semplice
    =DATA.MESE(B2;TRONCA(B3/30))+B3-(TRONCA(B3/30)*30)
    Il calendario commerciale considera tutti i mesi di 30 gg, quindi basta dividere per 30 i giorni da aggiungere e ci troviamo i mesi da differire dalla data iniziale( questa funzione considera come data finale lo stesso giorno della data iniziale) .
    Facendo 466/30 abbiamo 15,5333 quindi tramite la funzione TRONCA prendiamo solo la parte intera cioè 15(mesi) considerati tutti di 30 giorni.
    Facendo 15x30 abbiamo 450 giorni da togliere a 466, quindi alla data iniziale aggiungiamo 15 mesi e 16 giorni.
    Il risultato non è esatto in quanto ottobre è di 31 nel tuo caso dovrebbe essere corretta la data dell'01/11/2017 considerando di 30 tutti i mesi.
    Quindi non puoi correggere la formula aggiungendo 1 in quanto potrebbero capitare mesi che realmente sono di 30 e febbraio che è variabile.

    Però se tu applichi la formula inversa vedrai che indicando sia come data finale 31/10/2017 o 01/11/2017 ti esce fuori sempre 466(31/10 viene considerato 01/11), quindi puoi verificarne l'esattezza con la formula inversa usando la funzione GIORNI360

    Ciao



  • di daidardi data: 10/09/2016 13:21:37

    ok perfetto! Chiarissima..!

    anche se giungo a conclusione che forse non potrò "beccare" sempre con precisione la data finale..!
    ma se lo scarto è di un giorno.. può andare bene..!

    Grazie ancora..! ;)



  • di ninai data: 12/09/2016 06:11:00

    ciao

    visto che, dove ho proposto la formula, non ho avuto riscontro del problema che la formula stessa presentava, rispondo quì.

    Da quello che ho capito, il problema del 31esimo giorno, si potrebbe risolvere:
    =SE(GIORNO(formula)=31;formula+1;formula)

    oppure
    =formula+(GIORNO(formula)=31)

    per "formula", intendo quella proposta da me o quella proposta da Gaetano (credo si equivalgano).



  • di gaetanopr data: 12/09/2016 09:34:31

    Ciao ninai, la correzione proposta non porterebbe sempre a risultati corretti, in quanto possono verificarsi diversi casi, ad esempio se i giorni fossero stati 467 il risultato corretto sarebbe 02/11/2017 la nostra restituirebbe 01/11/2017, quindi la verifica bisogna effettuarla non sul risultato finale ma sul mese dove vanno aggiunti i giorni e se con i giorni da aggiungere si supera 30 .
    Nella mia formula(credo anche nella tua) basta aggiungere alla data iniziale i giorni residui(i giorni al netto dei mesi interi da 30 aggiunti nella prima parte) GIORNO(B2)+B3-(TRONCA(B3/30)*30)>30 se superano 30 e se il mese dove aggiungerli GIORNO(FINE.MESE(DATA.MESE(B2;TRONCA(B3/30));0)=31) è di 31.

    Verrebbe una formula del genere


    Ma in ogni caso rimarrebbe da controllare il risultato in caso del mese di febbraio 28/29.
     
     
    SE(E(GIORNO(FINE.MESE(DATA.MESE(B2;TRONCA(B3/30));0)=31);GIORNO(B2)+B3-(TRONCA(B3/30)*30)>30);DATA.MESE(B2;TRONCA(B3/30))+B3-(TRONCA(B3/30)*30)+1;DATA.MESE(B2;TRONCA(B3/30))+B3-(TRONCA(B3/30)*30))



  • di Mister_x (utente non iscritto) data: 12/09/2016 09:52:16

    ciao a tutti
    ho terminato le mie vacanze, dove non esisteva internet , ma solamente un telefono con antenna per comunicazione, quindi rispondo anch'io alla domanda

    per questo problema io in alcuni casi ho optato con questa formula

    ammettiamo la nostra data in A1 ed in B1 inserisco i giorni da considerare in C1 questa
    =DATA.MESE(A1;TRONCA(B1/30))+RESTO(B1;30)

    in precedenza avevo anche utilizzato la funzione DATA() con lo stesso risultato ma era un pochino macchinosa da come vedete

    =DATA(ANNO(A1);MESE(A1)+INT((B1/30));GIORNO(A1)+INT(RESTO(B1/30;1)*24/3*4))

    ciao






  • di scossa data: 12/09/2016 10:42:45

    cit. Gianfranco: "per avere 01/11/2017 devi avere 467 giorni "

    Secondo me con 467 giorni la data dovrebbe essere 02/11/2017.
    Infatti GIORNO360(15/07/216; 02/11/2017) restituirebbe 467,
    mentre GIORNO360(15/07/216; 01/11/2017) restituirebbe 466.

    Lo stesso "errore" lo restituisce la formula di Mister_x; per quella di Ninai (cioa Santo) non posso dire, visto che mi sfugge dov'è riportata.

    Io avrei trovato una possibile alternativa, ma vorrei che daidardi spiegasse bene la logica del calcolo e riportasse qualche esempio concreto dei risultati per diversi numeri di giorni, prima di proporla.


    scossa's web site
    Se tu hai una mela, ed 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)



  • di Gianfranco data: 12/09/2016 11:02:25

    Ciao Scossa
    io i calcoli di verifica li ho fatti con dei programmi
    on line di commercialisti
    perciò la certezza non c'è
    però ti assicuro che per avere 01/11/2017
    devi avere 467 giorni
    dopo ti dirò in tutta franchezza
    che neanche l'inps sa fare bene questi calcoli
    la Naspi ha duemila variabili
    sto ricreando il foglio del calcolo
    per i miei compagni e ti dirò che viene l'orticaria

    e detta alla Fantozzi è una cagata pazzesca
    viene penalizzato chi ha un lavoro precario



  • di gaetanopr data: 12/09/2016 11:09:46

    Ciao scossa, se hai letto la mia ultima risposta pure io sostengo che con 467 giorni la data corretta è 02/11/2017, infatti ho proposto una modifica alla mia formula originaria ma non capisco perchè nonostante le due condizioni restituendo VERO non mi aggiungano 1 giorno, la stessa formula testata su openoffice mi restituisce la data corretta 02/11/2017.
    Comunque la logica da seguire è quella di considerare tutti i mesi di 30 quindi anche febbraio quindi se alla data del 15/02/16 aggiungiamo 15 la semplice somma restituirebbe 01/03/2016 invece la data corretta è 29/02/2016, 15+15 = 30 con 16 giorni si passa al 01/03/16 cioè 15+16 = 31
    Facendo GIORNO360(15/02/16;29/02/16) viene 14 e GIORNO360(15/02/16;01/03/16) esce fuori 16, quindi con 14 o 15 la data da restituire è 29/02/16 cioè fine mese di febbraio.



  • di scossa data: 12/09/2016 13:15:16

    CIao,

    cit. gaetanopr : "Facendo GIORNO360(15/02/16;29/02/16) viene 14 e GIORNO360(15/02/16;01/03/16) esce fuori 16, quindi con 14 o 15 la data da restituire è 29/02/16 cioè fine mese di febbraio."

    la formula che ho "assemblato" restituisce esattamente 29/02/2016 sia con 14 che con 15 gg.

    Io non so quale sia la "formula" usata dall'INPS e se sia quella corretta, ma ho dato per buono che GIORNO360() restituisca il valore desiderato, quindi ho costurito la mia formula su detto assunto.
    In pratica partendo dalla data iniziale creo una matrice di tutti i GIORNI360() tra la data iniziale e le date create in una matrice di tutte le date successive, quindi prendo la data il cui GIORNO360() corrisponda al valore in B3.

    Con questa formula (matriciale da confermare con ctrl+maiusc+invio):

    =$B$2+INDICE(GIORNO360($B$2;$B$2+RIF.RIGA(A1:A18000));CONFRONTA($B$3;GIORNO360(B2;B2+INDICE(GIORNO360(B2;B2+RIF.RIGA(A1:A18000));0));1))

    ho imposto il limite al 18.000 giorni (50 anni "commerciali"), ma volendo si può aumentare.

    Altrimenti con:

    =$B$2+INDICE(GIORNO360($B$2;$B$2+$B$3-9+RIF.RIGA(A1:A60));CONFRONTA($B$3;GIORNO360(B2;B2+INDICE(GIORNO360(B2;B2+$B$3-9+RIF.RIGA(A1:A60));0));1))


    sempre matriciale da confermare con ctrl+maiusc+invio, si limita la matrice dei giorni al minimo indispensabile.


    scossa's web site
    Se tu hai una mela, ed 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)



  • di ninai data: 12/09/2016 15:01:37

    ciao a tutti

    non ho più seguito più l'argomento, faccio presente che la mia formula era:
    =DATA(ANNO(B2);MESE(B2)+INT(B3/30);GIORNO(B2)+RESTO(B3;30))
    ma ovviamente non funziona con i 31 ed i 28 o 29 di febbraio
    si potrebbe rattoppare con una serie di VERO/FALSO, ma verrebbe un groviglio
    scossa:
    anche le tue credo abbiano problemi con 15/02/2016 + 16



  • di scossa data: 12/09/2016 15:43:30

    cit. ninai: "anche le tue credo abbiano problemi con 15/02/2016 + 16"

    Ciao Santo,
    vero, se GIORNO360() non restituisce né 15 né 16 la formula prenderà 14 .... necessita di un pit-stop per un aggiustamento alle sospensioni



    scossa's web site
    Se tu hai una mela, ed 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)



  • di scossa data: 12/09/2016 15:51:02

    Comunque non ho capito cosa dovrebbe restituire 15/02/2016 + 15



    scossa's web site
    Se tu hai una mela, ed 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)



  • di ninai data: 12/09/2016 15:55:59

    ciao
    ecco il mio rattoppo:
    =DATA(ANNO(B2);MESE(B2)+INT(B3/30)+INT((GIORNO(B2)+RESTO(B3;30))/30);RESTO(GIORNO(B2)+RESTO(B3;30);30))-(GIORNO(DATA(ANNO(B2);MESE(B2)+INT(B3/30)+INT((GIORNO(B2)+RESTO(B3;30))/30);RESTO(GIORNO(B2)+RESTO(B3;30);30)))=31)

    da testare per bene, io devo scappare...., ho una granita con panna che mi guarda storto e la devo "castigare" ;) ;)



  • di scossa data: 12/09/2016 16:54:01

    cit.: "da testare per bene, io devo scappare...., ho una granita con panna che mi guarda storto e la devo "castigare" "

    Allora, visto che fai il furbo, tra una cucchiaiata e l'altra di granita, verifica tu il mio rattoppo, che mi sembra produca gli stessi risultati della tua:

    =$B$2+INDICE(GIORNO360($B$2;$B$2+$B$3-9+RIF.RIGA(A1:A60));CONFRONTA($B$3;GIORNO360(B2;B2+INDICE(GIORNO360(B2;B2+$B$3-9+RIF.RIGA(A1:A60));0));1))+(GIORNO(B2)+B3=31)




    scossa's web site
    Se tu hai una mela, ed 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)



  • di ninai data: 12/09/2016 19:29:44

    "cucchiaiata e l'altra di granita"

    Sacrilegio!!!!!

    la granita con il cucchiaio/cucchiaino non si può sentire, solo un nordico potrebbe farlo

    Ricorda: mescolare, Inzuppare e per ultimo bere

    Scusate l'OT
    per le formule, aspettiamo riscontri esterni

    edit
    In ogni caso prova 10/10/2016 + 21 , credo vi sia un problema



  • di scossa data: 12/09/2016 22:16:52

    cit.: "la granita con il cucchiaio/cucchiaino non si può sentire, solo un nordico potrebbe farlo"



    cit.: "In ogni caso prova 10/10/2016 + 21 , credo vi sia un problema"

    Ulteriore regolazione alle sospensioni:

    =$B$2+INDICE(GIORNO360($B$2;$B$2+$B$3-9+RIF.RIGA(A1:A60));CONFRONTA($B$3;GIORNO360(B2;B2+INDICE(GIORNO360(B2;B2+$B$3-9+RIF.RIGA(A1:A60));0));1))+(GIORNO(B2)+B3=31)*(FINE.MESE(B2;0)<30)


    scossa's web site
    Se tu hai una mela, ed 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)



  • di daidardi data: 12/09/2016 23:43:21

    scusate la mia "dipartita" ma il lavoro (guarda un po'.. responsabile di Patronato) mi ha portato via parecchio tempo..
    inoltre non credevo suscitasse tanto interesse... cosa che mi solleva... forse ne potrò venire a capo!

    @scossa (ovvio anche per gli altri)
    spiegare il risultato ? auahu una parola.. sono giorni che ci provo e per ora l'Inps ha ribadito che utilizzano l'anno commerciale ma.. dato che l'idea di "tracciare" la durata delle Naspi dei miei assistiti (prima, non avendo appunti, mi portavano a dover andare all'Inps più e più volte in quanto nessuno ricordava la durata precisa della prestazione) ho solo 3 campioni:
    (Inizio - giorni durata - scadenza definita dall'INPS)

    Assistito1
    15/07/2016 - 466 - 01/11/2017

    Assistito2
    16/07/2016 - 161 - 25/12/2016

    Assistito3
    08/08/2015 - 679 - 28/06/2017

    In ogni caso (con le formule suggeritemi all'inizio) non ne combacia una..!!!! :D
    spero di avere fornito dati più chiari; assodato siano gli unici che ho (salvo l'anagrafica degli assistiti!! ma credo sia superflua :D)



  • di scossa data: 13/09/2016 10:40:31

    cit.: "15/07/2016 - 466 - 01/11/2017"
    per questa sia la mia che quella di ninai danno il risultato corretto

    cit.: "16/07/2016 - 161 - 25/12/2016"
    per questa mi sfugge come possa venir fuori questa data.

    Sinceramente direi che se non riesci a capire la logica usata dall'Inps non ne caviamo un ragno dal buco.


    scossa's web site
    Se tu hai una mela, ed 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)



  • di daidardi data: 13/09/2016 11:04:41

    In realtà non me ne combacia nemmeno uno.. :

    per quanto riguarda le meccaniche INPS non ho e non credo di potere avere certezze.. ma visto che per 2 su 3 il risultato differiva di soli 1-2 giorni sembrava quasi attendibile la teoria del calcolo commerciale..

    è da impazzire..

    P.S. ho allegato screen in merito




  • di Gianfranco data: 13/09/2016 11:06:47

    guarda il file e vedi la logica inps
    sembra semplice

    E SBAGLIATA SORRY



  • di scossa data: 13/09/2016 11:21:24

    cit.: "In realtà non me ne combacia nemmeno uno.. : "

    Non so che formule stai usando ma sia la mia che quella di ninai, per 15/07/2016 e 466 giorni da 01/11/2017





    ABCD
    2Data Decorrenza15/07/2016
    3Giorni Riconosciuti INPS466
    4Somma24/10/201701/11/2017=$B$2+INDICE(GIORNO360($B$2;$B$2+$B$3-9+RIF.RIGA(A1:A60));CONFRONTA($B$3;GIORNO360(B2;B2+INDICE(GIORNO360(B2;B2+$B$3-9+RIF.RIGA(A1:A60));0));1))+(GIORNO(B2)+B3=31)
    501/11/2017=DATA(ANNO(B2);MESE(B2)+INT(B3/30)+INT((GIORNO(B2)+RESTO(B3;30))/30);RESTO(GIORNO(B2)+RESTO(B3;30);30))-(GIORNO(DATA(ANNO(B2);MESE(B2)+INT(B3/30)+INT((GIORNO(B2)+RESTO(B3;30))/30);RESTO(GIORNO(B2)+RESTO(B3;30);30)))=31)



    scossa's web site
    Se tu hai una mela, ed 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)





  • di scossa data: 13/09/2016 11:35:12

    cit.: "guarda il file e vedi la logica inps ... sembra semplice"

    Mi spieghi per quale motivo per la data inizio 15/07/2016 (466) per luglio sommi 15 giorni, mentre per la data inzio 16/07/2016 (161) ne sommi 16 anziché 14 che, fatalità, porterebbe a 159 il conteggio e quindi al 27/12 la data per avere 161?





















    FGHIJKL
    82016luglio301615
    92016agosto303030
    102016settembre303030
    112016ottobre303030
    122016novembre303030
    132016dicembre302530
    142017gennaio3030
    152017febbraio3030
    162017marzo3030
    172017aprile3030
    182017maggio3030
    192017giugno3030
    202017luglio3030
    212017agosto3030
    222017settembre3030
    232017ottobre3030
    242017novembre301
    252017dicembre30
    26
    27161466



    scossa's web site
    Se tu hai una mela, ed 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)





  • di Gianfranco data: 13/09/2016 11:50:59

    Ciao
    stavo per annullare tutto

    ho provato anche i 679 giorni e mi sono accorto della bestialità che ho scritto

    per un caso fortuito i conti tornano ma non è esatto
    inoltre verrebbero a sparire i giorni con il 31
    ora levo il file

    sorry


    ma levare il file come si fa?

    ora però sono curioso
    chiamo il segretario provinciale e lo
    obbligo a contattare l'inps per la risposta



  • di daidardi data: 18/09/2016 16:57:49

    avuto risposte quindi.. ? :D :D



  • di Gianfranco data: 18/09/2016 17:47:02

    Ciao Daidardi

    Segreteria provinciale Vicenza
    Ci dispiace abbiamo chiesto lumi all'inps
    ma nessuno sa niente ( traduzione inps: scriviamo i dati e il programma ci da la risposta )

    Segreteria regionale Veneto

    abbiamo chiesto più volte all'inps di passarci l'algoritmo del calcolo
    ma ad oggi nessuna risposta stiamo insistendo
    (traduzione inps: che roba è?)

    insisterò a costo di parlare con la signora Franca Porto