Estrarre hh:mm ---> to Date

di il
5 risposte

Estrarre hh:mm ---> to Date

Ho una data in formato dd/mm/yyyy hh:MM:ss

come posso

estrarre una hh:mm

ed averla ancora come campo data?

Grazie

PFMArro

5 Risposte

  • Re: Estrarre hh:mm ---> to Date

    Non sono certo di comprendere puntualmente la richiesta... ma con la funzione FORMAT$(.....) puoi ottenere "hh:mm" da un campo data.
  • Re: Estrarre hh:mm ---> to Date

    Grazie del messaggio

    se scrivo format(now,"hh:MM")

    il risultato mi pare sia una stringa e non una data.

    vorrei estrarre una HH:MM e poi lavorarci sopra

    aggiungendo o sottraendo ore o minuti

    Grazie

    PFMarro
  • Re: Estrarre hh:mm ---> to Date

    La funzione FORMAT restituisce ovviamente un dato di tipo stringa...!!!

    Se devi farci delle operazioni, cosa che non avevi detto..., dovresti spiegare meglio l'esigenza, perchè le opzioni possibili possono essere molto diverse.

    In primo luogo NON ESISTE un FieldType(nemmeno un DataType) di tipo "hh:mm", ma esiste solo il tipo Date che comprende come ben sai anche la parte gg/mm/aaaa(oppure dd/mm/yyyy).
    Detto questo se devi fare operazioni matematiche di SOMMA/SOTTRAZIONE su hh:mm non serve alcuna conversione, ma si usano le funzioni DateAdd(...) e DateDiff(...) inserendo come parametro il dato di riferimento sulla manipolazione...!

    Se devi invece trattare orari >24h allora hai poco da fare se non passare tutto in formato NUMERICO al dato con minor definizione(quindi i MINUTI) isolare la considerazione del Formato hh:mm solo dopo il calcolo... e dopo la riconversione...!

    Es, se devi sommare delle ore di lavoro 8:30(8h e 30min) + 7:30(7h e 30min) + 15:30(15h e 30min) e vuoi il risultato in hh:mm non puoi di certo usare le funzioni sulle date in quanto avresti l'incremento del Giorno...!

    Converti tutto in MINUTI, sommi e riconverti in HH ed il resto sono Minuti.
    A quel punto otterrai tuttavia un dato che non ha nulla a che fare con un campo Data, ma sarà solo una Stringa...

    Credo tu debba chiarirti bene le cose.
  • Re: Estrarre hh:mm ---> to Date

    Grazie del messaggio

    pensavo propsio di convertire in minuti e poi il risultato
    es risultato
    ore=12
    minuti = 30


    cdate("12/05/2012" & " " & "12:30")
  • Re: Estrarre hh:mm ---> to Date

    Buona giornata;
    non vorrei aver capito male la richiesta di pfmarro;
    ho provato ad impostare una tabella "Data ora" così strutturata:
    Nome campo .....Tipo dati ...Struttura dati
    Id ..................Contatore ..(Chiave primaria)
    Data Ora ..........Data_Ora...Data generica
    PiùMeno ..........Testo........Dimensione campo 1...Valore predefinito..."+"...Valido se..."+" Or "-"...
    Ora ................Data_Ora...Ora breve 24h .......... Valore predefinito ...#0.00.00#
    Data Ora New ....Data_Ora...Data generica

    Ho aperto una maschera di inserimento dati con tutti i campi previsti nella Tabella "Data ora";

    Per i campi [Data Ora], [PiùMeno] e [Ora], ho impostato l'evento AfterUpdate con il quale viene calcolato il valore di [Data_Ora_New]

    Inserendo nuovi valori, o variando i valori esistenti, in [Data Ora] oppure in [PiùMeno] pittosto che in [Ora], verrà aggiornato il valore di [Data Ora New] di conseguenza.

    Il limite, come già detto da Alex, consiste nel campo [Ora] che accetta valori compresi tra 00:00 ÷ 23:59.
    Esempio:
    [Data Ora] 10/10/2011 9.10.00
    [PiùMeno] -
    [Ora] 1:00
    [Data Ora New] 10/10/2011 8.10.00

    [Data Ora] 10/10/2011 9.10.00
    [PiùMeno] +
    [Ora] 23:59
    [Data Ora New] 11/10/2011 9.09.00
Devi accedere o registrarti per scrivere nel forum
5 risposte