Sommare giorni commerciali 360
Hai un problema con Excel? 
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
| A | B | C | D |
| 2 | Data Decorrenza | 15/07/2016 | | |
| 3 | Giorni Riconosciuti INPS | 466 | | |
| 4 | Somma | 24/10/2017 | 01/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) |
| 5 | | | 01/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?
| F | G | H | I | J | K | L |
| 8 | 2016 | | luglio | 30 | | 16 | 15 |
| 9 | 2016 | | agosto | 30 | | 30 | 30 |
| 10 | 2016 | | settembre | 30 | | 30 | 30 |
| 11 | 2016 | | ottobre | 30 | | 30 | 30 |
| 12 | 2016 | | novembre | 30 | | 30 | 30 |
| 13 | 2016 | | dicembre | 30 | | 25 | 30 |
| 14 | 2017 | | gennaio | 30 | | | 30 |
| 15 | 2017 | | febbraio | 30 | | | 30 |
| 16 | 2017 | | marzo | 30 | | | 30 |
| 17 | 2017 | | aprile | 30 | | | 30 |
| 18 | 2017 | | maggio | 30 | | | 30 |
| 19 | 2017 | | giugno | 30 | | | 30 |
| 20 | 2017 | | luglio | 30 | | | 30 |
| 21 | 2017 | | agosto | 30 | | | 30 |
| 22 | 2017 | | settembre | 30 | | | 30 |
| 23 | 2017 | | ottobre | 30 | | | 30 |
| 24 | 2017 | | novembre | 30 | | | 1 |
| 25 | 2017 | | dicembre | 30 | | | |
| 26 | | | | | | | |
| 27 | | | | | | 161 | 466 |
| 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
Vuoi Approfondire?