Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    361

    Cdate con differenti local setting

    Ho un problema nel eseguire il Cdate su una data:
    questa data è scritta nello standard americano "May 1 2006".
    Sul mio pc come local setting ho oviamente le impostazioni italiane.
    Se però cerco di convertire la data dell'esempio, la funzione cdate mi restituisce type mismatch.
    Premesso che speravo che la funzione cdate riuscisse ad individuare date scritte anche in altri formati, esiste un trucco per far si che c riesca, senza dovermi scrivere una funzione che mi traduca la data americana in italiana?

    In breve vorrei poter "dire" a Cdate che la data che gli sto passando è nel formato americano e che la voglio restituita nel formato italiano dd/mm/aaaa.

    Grazie in anticipo
    ciao

  2. #2
    Utente di HTML.it L'avatar di yyzyyz
    Registrato dal
    Oct 2001
    Messaggi
    1,653
    scusa xchè nn passi la tua variabile date al format prima di passarlo a Cdate ?

    codice:
    Dim tuadata As Date
    Dim tuadata_ok As Date
    
    tuadata = Date
    tuadata_ok = Format(tuadata, "dd/mm/yy")
    Debug.Print tuadata_ok

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    361
    perchè purtroppo non la sa interpretare

    premetto che questa data la leggo da una chiave di registro e non ho modo di modificarla
    (potrei, e sto facendo con una function, ma sarebbe interessante trovare una maniera più "universale")

    il settaggio della data dei mie pc sono nello standard italiano.

    VB6 purtroppo non riesce a capire che il valore che gli sto dando è una data.

    quindi la funzione format non esegue nulla, mi restituisce esattamente la data come l'ha ricevuta.

    Se vuoi testare

    datainiziale = "May 1 2006"
    data_ok = format(datainiziale, "dd/mm/aaaa")

    se provi, data_ok avrà lo stesso valore di datainiziale

    ricapitolado, devo inanzitutto far capire al programma che il valore presente in datainiziale è una data scritta in inglese e che me la deve "tradurre" in italiano.

    infatti se gli scrivo Maggio al posto di May, riesco poi a scrivermela nel formato che voglio.

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.