Tempi di sottrazione oltre la mezzanotte in Excel, mantenendo la data corretta


0

Sarei felice di ricevere aiuto per un problema in Excel. Devo sottrarre ore o minuti da un determinato momento. Tutto funziona bene fino a quando il calcolo non inizia prima delle 24:00. Esempio: 3:00 - 5 ore = -2 La risposta corretta sarebbe 22:00.

È importante che la soluzione sia basata su Excel (senza VBA o componenti aggiuntivi) e che la data cambi rispettivamente. Dato che ho già colonne 20x3, mi piacerebbe molto evitare colonne extra ...

Grazie mille in anticipo!


Stai facendo = A1-TIME (5,0,0) dove A1 ha la data / ora di inizio? In A1 ho messo = now (), e poi in A2 ho messo = A1-TIME (5,0,0) che risulta in A2 che mostra ora - 5 ore
spikey_richie il

Ciao, grazie per una rapida risposta. Tuttavia, ho un orario fisso in A1, non l'ora reale ...
Uni YaMo

Certo, ma si applica la stessa logica supponendo che le celle siano formattate correttamente
spikey_richie il

03:00 meno 5 ore è 22:00 non 23:00 - è questo che vuoi dire?
lx07,

Ecco cosa intendevo. 😂
Uni YaMo

Risposte:


0

Se memorizzi 5 ore in Excel, questo verrà archiviato come 5:00 il 00/01/1900 in Excel (grazie a @Forward Ed per questa correzione).

Supponendo che la data / ora da cui si desidera sottrarre sia successiva all'anno 1900, è possibile semplicemente formattare le celle come ora o data e sottrarre.

Come menzionato nei commenti sotto, le date / i tempi sono memorizzati come numeri a partire dal 00/01/1900 e come puoi vedere nella figura seguente sottraendo i numeri e riconvertendoli in gg / mm / aaaa HH: mm: ss dà lo stesso risultato.

Tempi con numeri


Correzione minore La data e l'ora in Excel sono memorizzate come un numero. La parte intera rappresenta il numero di giorni dal 1900/01/00. Il significato 1900/01/01 è 1. La parte dopo il decimale rappresenta il tempo. Meglio ancora una frazione del giorno. 0,5 è mezzogiorno. 24:00 non esiste, ma 00:00 esiste. Non è necessario aggiungere 24 giorni all'equazione, è necessario solo aggiungere 1. Il motivo per cui non si vede il problema è che il formato della cella mostra solo la parte temporale e non anche la data.
Inoltra il

@Forward Ed -Ho aggiornato l'immagine in modo che tutti i campi siano "gg / mm / aa hh / mm / ss". L'aggiunta di 24 sembra ancora funzionare.
lx07

Con la data aggiunta ad A in futuro rispetto a B, il controllo delle condizioni nell'istruzione IF sarà sempre falso. Quindi stai semplicemente facendo AB che dovrebbe funzionare poiché hai aggiunto la parte della data e non finirai con un numero positivo. Imposta la data per A = B e prova di nuovo
Inoltra il

@Forward Ed - hai ragione. Proverò ad aggiornare la mia risposta.
lx07,

-1

Grazie a tutti per il vostro sostegno!

Finalmente ho trovato la soluzione qui:

  1. Excel, come sottrarre il tempo a trascorrere prima di mezzanotte
  2. https://www.exceltip.com/excel-date-time-formulas/avoiding-errors-when-subtracting-times.html devi solo sapere cosa cercare!

in pratica invece di aggiungere 24 ore suggeriscono di usare la funzione MOD e funziona!


L'uso di MOD tuttavia non rispetta correttamente la data (rimuove la data da un campo data / ora e la imposta su 01/01/1900). Preservare la data era un requisito poiché la tua domanda diceva "È importante che ... la data cambi rispettivamente."
lx07

Chiedo scusa - se si formatta il risultato calcolato utilizzando MOD come data (piuttosto che l'ora che fornisce risultati corretti) è 00/01/1900 non 01/01/1900 in Excel 2016. Proprio perché Excel pensa che lo zero di gennaio sia un appuntamento è un'altra domanda ...
lx07

Sì, ho riscontrato questo problema ora. La ricerca continua 😏
Uni YaMo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.