Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di Cina76
    Registrato dal
    Aug 2002
    Messaggi
    203

    [VB6] Conversione formato celle di excel

    Ciao a tutti , tramite una routine in vb carico dei dati in un foglio excel e in seguito li esporto su una tabella access.
    I dati vengono importati tutti bene tranne una colonna dove dovrei mi trovarmi le ore (es:22.30.35)
    mi trovo invece valori numerici che nn capisco (es:0,937905093)
    Quest'ultimo copiandolo e incollandolo su di un foglio excel e cambiandogli formato alla cella in ORA(h) mi restituisce il valore in ora giusto.

  2. #2

    Re: [VB6] Conversione formato celle di excel

    Originariamente inviato da Cina76
    Ciao a tutti , tramite una routine in vb carico dei dati in un foglio excel e in seguito li esporto su una tabella access.
    I dati vengono importati tutti bene tranne una colonna dove dovrei mi trovarmi le ore (es:22.30.35)
    mi trovo invece valori numerici che nn capisco (es:0,937905093)
    Quest'ultimo copiandolo e incollandolo su di un foglio excel e cambiandogli formato alla cella in ORA(h) mi restituisce il valore in ora giusto.
    Ciao !
    Internamente Excel rappresenta le ore come frazione di giorno, quindi le 22:30 sono circa 22,5 ore di 24, ergo 22,5/24 = 0,9375.

    E' quindi il formato applicato alla cella che determina la corretta visualizzazione: se il formato e' generico e il contenuto e' un numero, vedrai 0,9375, se e' un orario vedrai 22:30...

    Spero che questa considerazione possa aiutarti a risolvere il problema...
    IceCube_HT (VB6 fan Club)

  3. #3
    Utente di HTML.it L'avatar di Cina76
    Registrato dal
    Aug 2002
    Messaggi
    203

    Re: Re: [VB6] Conversione formato celle di excel

    Originariamente inviato da icecube_HT
    Ciao !
    Internamente Excel rappresenta le ore come frazione di giorno, quindi le 22:30 sono circa 22,5 ore di 24, ergo 22,5/24 = 0,9375.

    E' quindi il formato applicato alla cella che determina la corretta visualizzazione: se il formato e' generico e il contenuto e' un numero, vedrai 0,9375, se e' un orario vedrai 22:30...

    Spero che questa considerazione possa aiutarti a risolvere il problema...
    Grazie per la risposta ICECUBE_HT , quindi una volta ke le mie ore sono converite in valori numerici come :0,937905092592593 oppure 3,74884259259259E-02 come faccio a determinare a che ore equivalgono?Che tu sappia c'è qualche funzione già presente in vb che possa utilizzare o ne devo crearne una.

    CIAO

  4. #4

    Re: Re: Re: [VB6] Conversione formato celle di excel

    Originariamente inviato da Cina76
    Grazie per la risposta ICECUBE_HT , quindi una volta ke le mie ore sono converite in valori numerici come :0,937905092592593 oppure 3,74884259259259E-02 come faccio a determinare a che ore equivalgono?Che tu sappia c'è qualche funzione già presente in vb che possa utilizzare o ne devo crearne una.

    CIAO
    Non capisco...
    Dicevi: "tramite una routine in vb carico dei dati in un foglio excel", quindi
    e' il TUO programma che calcola l'orario e lo inserisce nel foglio Excel...?

    Comunque non c'e', mi pare, una funzione gia' pronta, ma e' abbastanza elementare convertire una frazione di giorno in ore,min,sec !!!! VVoVe: ...per un utente iscritto a questo forum dal 2002, poi...
    codice:
    Public Function Orario(ByVal fraz As Double) As String
       Dim h As Double, o As Integer, m As Integer, s As Integer
       h = 24 * fraz
       o = Int(h)
       h = 60 * (h - o)
       m = Int(h)
       h = 60 * (h - m)
       s = Int(h)
       Orario = CStr(o) & ":" & CStr(m) & ":" & CStr(s)
    End Function
    IceCube_HT (VB6 fan Club)

  5. #5
    Utente di HTML.it L'avatar di Cina76
    Registrato dal
    Aug 2002
    Messaggi
    203

    Re: Re: Re: Re: [VB6] Conversione formato celle di excel

    Originariamente inviato da icecube_HT
    Non capisco...
    Dicevi: "tramite una routine in vb carico dei dati in un foglio excel", quindi
    e' il TUO programma che calcola l'orario e lo inserisce nel foglio Excel...?

    Comunque non c'e', mi pare, una funzione gia' pronta, ma e' abbastanza elementare convertire una frazione di giorno in ore,min,sec !!!! VVoVe: ...per un utente iscritto a questo forum dal 2002, poi...
    codice:
    Public Function Orario(ByVal fraz As Double) As String
       Dim h As Double, o As Integer, m As Integer, s As Integer
       h = 24 * fraz
       o = Int(h)
       h = 60 * (h - o)
       m = Int(h)
       h = 60 * (h - m)
       s = Int(h)
       Orario = CStr(o) & ":" & CStr(m) & ":" & CStr(s)
    End Function
    Grazie dell'attestato di stima prima di tutto.
    Probabilmente se sono iscritto dal 2002 si vede che faccio pure altro....che dici?
    Nel foglio excel viene importata la data l'ora e altre informazioni da un foglio dat.
    La funzione logicamente l'ho creata, chiedevo solamente se ce n'era una che forse anzi probabilmente non conoscevo.
    CIAO e grazie

  6. #6

    Re: Re: Re: Re: Re: [VB6] Conversione formato celle di excel

    Originariamente inviato da Cina76
    Grazie dell'attestato di stima prima di tutto.
    Probabilmente se sono iscritto dal 2002 si vede che faccio pure altro....che dici?
    Nel foglio excel viene importata la data l'ora e altre informazioni da un foglio dat.
    La funzione logicamente l'ho creata, chiedevo solamente se ce n'era una che forse anzi probabilmente non conoscevo.
    CIAO e grazie
    Dai, non volevo... il tono era scherzoso, ovviamente...
    Voglio ben sperare che tu faccia anche altro... intendevo solo dire che se sei iscritto ad un forum di informatica da 5 anni non sei, presumibilmente, un novellino... e il problema in questione era indipendente da linguaggi/programmazione/computer, ecc...

    Chiedo scusa.
    IceCube_HT (VB6 fan Club)

  7. #7
    Utente di HTML.it L'avatar di Cina76
    Registrato dal
    Aug 2002
    Messaggi
    203
    Niente dai ...anche io scherzavo.

    Saluti e grazie per le dritte!

  8. #8
    Utente di HTML.it L'avatar di Cina76
    Registrato dal
    Aug 2002
    Messaggi
    203
    Sembrava troppo facile....
    Adesso mi sono accorto che alcuni dati ke ho riportati in forma esatta nel foglio excel che mi creo con la "famosa" routine.Qunado vado a popolare la tabella perdono le loro proprietà originali.L'esempio è un campo importo che sul foglio excel è:345,2018 sulla tabella access è riportato come :3452018.
    In pratica quell'importo ke dovrebbe essere € 345,20 diventa € 3.452.018 ....non è che sia la stessa cosa.
    Ho provato anche a cambiare il tipo dati del campo importo ma è la stessa cosa.
    CIAO

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.