Condividi tramite

Conversione di una stringa di testo in data e ora

Anonimo
2023-05-01T23:16:11+00:00

Mi è stata fornita una cartella MS Excel con una serie di dati sotto forma di stringa testuale che può variare nei seguenti modi:

"5 giorni 15 ore 27 min. 57 secondi" / "4 giorni" / "18 min." / "3 ore 59 min." / "18 min. 7 secondi"

Non posso agire sulla fonte, ma devo arrangiarmi a trasformarla in un formato data e ora in Excel per Mac.

Come posso fare?

In particolare vorrei che mi restituisse il totale di ore, minuti e secondi; nel primo caso "135:27:57"

Grazie di cuore per qualsiasi aiuto.

Microsoft 365 e Office | Excel | Per la casa | MacOS

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2023-05-02T14:38:50+00:00

Ciao David,

GRAZIE MILLE per la tua risposta, molto rapida e per il codice!

Fantastico, risolve una buona parte del mio problema.

Ho però provato con alcuni tempi e ho notato che mi restituisce errore.

Forse non sono stato preciso io nell'esporre in modo dettagliato il problema o forse occorre una piccola modifica al codice, ora provo a guardare meglio e cerco di capire come è costruito anche se non sono molto bravo con la programmazione.

Ti allego l'immagine del mio test.

Grazie mille per una tua eventuale risposta :-)

David.

Immagine

Sfortunatamente, avevo considerato e testato solo gli esempi che hai fornito piuttosto che considerare tutte le possibili possibilità.

La seguente funzione rivista dovrebbe essere più robusta e resistente:

L'immagine seguente mostra i risultati ottenuti con la funzione revista utilizzando esempi di dati che includono quelli problematici da te evidenziati:

  [![](https://learn-attachment.microsoft.com/api/attachments/f1adbb9f-b7b5-4759-bcc5-b6c8aea4de3a?platform=QnA"https://1drv.ms/x/s!AmTW9HzZG8cqlRpQ8Us9zmh99qoG?e=ihfvOD" title="https://1drv.ms/x/s!AmTW9HzZG8cqlRpQ8Us9zmh99qoG?e=ihfvOD" rel="ugc nofollow">David20230502.xlsm

NB:

Ho fornito un link al mio codice in quanto, di nuovo, non sono riuscito a postare la mia risposta con il codice incluso, Il codice si troverà anche nel modulo di codice Modulo1 del mio file di prova aggiornato che ho caricato e di cui troverai il link trova sopra.

===

Regards,

Norman

Immagine

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

4 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2023-05-03T12:09:39+00:00

    Ciao David,

    Funziona MOLTO BENE!

    Mi hai tolto un grosso problema, ti ringrazio molto.

    Mi fa piacere che il codice ti sia stato utile e ti ringrazio per il cortese riscontro.

    Alla prossima.

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-05-03T12:01:46+00:00

    Ciao Norman,

    Funziona MOLTO BENE!

    Mi hai tolto un grosso problema, ti ringrazio molto.

    Stai bene.

    Cordiali saluti.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-05-02T09:07:31+00:00

    Ciao Norman,

    GRAZIE MILLE per la tua risposta, molto rapida e per il codice!

    Fantastico, risolve una buona parte del mio problema.

    Ho però provato con alcuni tempi e ho notato che mi restituisce errore.

    Forse non sono stato preciso io nell'esporre in modo dettagliato il problema o forse occorre una piccola modifica al codice, ora provo a guardare meglio e cerco di capire come è costruito anche se non sono molto bravo con la programmazione.

    Ti allego l'immagine del mio test.

    Grazie mille per una tua eventuale risposta :-)

    David.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2023-05-02T04:56:32+00:00

    Ciao David,

    Mi è stata fornita una cartella MS Excel con una serie di dati sotto forma di stringa testuale che può variare nei seguenti modi:

    "5 giorni 15 ore 27 min. 57 secondi" / "4 giorni" / "18 min." / "3 ore 59 min." / "18 min. 7 secondi"

    Non posso agire sulla fonte, ma devo arrangiarmi a trasformarla in un formato data e ora in Excel per Mac.

    Come posso fare?

    In particolare vorrei che mi restituisse il totale di ore, minuti e secondi; nel primo caso "135:27:57"

    Grazie di cuore per qualsiasi aiuto.

    Un modo sarebbe sfruttare una UDF (funzione utente) che può essere utilizzata come una funzione nativa di Excel.

    Quindi, prova qualcosa del genere:

    • Alt+F11 per aprire l'editor di VBA
    • Alt+IM per inserire un nuovo modulo di codice
    • Nel nuovo modulo vuoto, incolla il seguente codice:
    • Alt+Q per chiudere l'editor di VBA e tornare a Excel
    • Salva il file con l'estensione xlsm

    Per utilizzare questa funzione immetti

                **=EstrarreTempo(A1)**
    

    dove A1 è la cella che contiene il testo di interesse:

     [![Immagine](https://learn-attachment.microsoft.com/api/attachments/1211f209-6111-4511-90c1-86f431bf2947?platform=QnA"https://1drv.ms/x/s!AmTW9HzZG8cqlRpQ8Us9zmh99qoG?e=ihfvOD" title="https://1drv.ms/x/s!AmTW9HzZG8cqlRpQ8Us9zmh99qoG?e=ihfvOD" rel="ugc nofollow">David20230502.xlsm

    NB:

    Ho fornito un link al mio codice in quanto, per ragioni sconosciute, non sono riuscito a postare la mia risposta con il codice incluso, Il codice si troverà anche nel modulo di codice Modulo1 del mio file di prova che ho caricato e di cui troverai il link trova sopra.

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento