Discussione:
convertire un numero in data
(troppo vecchio per rispondere)
Ferry
2007-09-21 08:58:02 UTC
Permalink
Ciao,
in una tabella ho una serie di date scritte ocme valore numerico conil
seguente formato: 20070318 (aaaa mm dd)
Vorrei chiedere se c'è la possibilità di creare un campo con formato data
utilizzando questo campo.
Oppure viceversa, creare da un valore data (2007/03/18) un valore numerico
(20070318) da confrontare con il campo in oggetto.
Grazie a tutti
Ferry
PBsoft
2007-09-21 10:25:29 UTC
Permalink
Post by Ferry
in una tabella ho una serie di date scritte ocme valore numerico conil
seguente formato: 20070318 (aaaa mm dd)
Vorrei chiedere se c'è la possibilità di creare un campo con formato data
utilizzando questo campo.
Oppure viceversa, creare da un valore data (2007/03/18) un valore numerico
(20070318) da confrontare con il campo in oggetto.
Allora, cerchiamo di fare un po' di chiarezza.

In una tabella hai un campo di tipo TESTO in cui viene memorizzata una stringa
di 8 caratteri che, a livello logico, rappresenta una data nel formato "aaaammgg":
giusto?
In caso affermativo, tu cosa vuoi ottenere? Una textbox in una form che ti
visualizzi quel dato come una data?

--
PBsoft di Gabriele Bertolucci
www.pbsoft.it
skype:pbsoftsolution
Ferry
2007-09-21 13:30:01 UTC
Permalink
Ciao,
prima di tutto scusami ma il cmapo in oggetto e un numerico e non un
carattere.
Il vantaggio di scrivere una data in forma numerica con questo metodo è che
ho unnumero incrementale sempre superiore all'altro. Il numero più grande è
il più recente.
detto questo mi piacerebbe creare una tabella di appoggio con tutti i dati
che mi servono e le date converitte in formato data.

se però, da un texbox con il formato data riesco a convertirlo nel formato
numerico con la stessa struttura va bene lo stesso.
Confronterò il numero anzichè la data.

Supponiamo volgia ricavare i dati di un certo periodo.
Se il campo è in formato numero dovrò selzionare i campi compresi per sempio
fra il numero 20070131 e il numero 20070310.


ferry
Saverio
2007-09-21 17:36:01 UTC
Permalink
Post by Ferry
Ciao,
prima di tutto scusami ma il cmapo in oggetto e un numerico e non un
carattere.
Il vantaggio di scrivere una data in forma numerica con questo metodo è che
ho unnumero incrementale sempre superiore all'altro. Il numero più grande è
il più recente.
detto questo mi piacerebbe creare una tabella di appoggio con tutti i dati
che mi servono e le date converitte in formato data.
se però, da un texbox con il formato data riesco a convertirlo nel formato
numerico con la stessa struttura va bene lo stesso.
Confronterò il numero anzichè la data.
Supponiamo volgia ricavare i dati di un certo periodo.
Se il campo è in formato numero dovrò selzionare i campi compresi per sempio
fra il numero 20070131 e il numero 20070310.
ferry
una cosa tipo:
dateserial(right([mydata],2),mid([mydata],5,2),left([mydata],4))

dove [mydata] è la tua data aaaammgg

viceversa è sufficiente un

format([data],"yyyymmdd")

dove [data] è la data in formato date

nb. se le metti dentro una query al posto delle virgole ci vanno
puntievirgola.

utile?

ciao

Saverio
Ferry
2007-09-24 07:50:00 UTC
Permalink
Si, è quello che mi serve.

grazie
ferry
Post by Saverio
Post by Ferry
Ciao,
prima di tutto scusami ma il cmapo in oggetto e un numerico e non un
carattere.
Il vantaggio di scrivere una data in forma numerica con questo metodo è che
ho unnumero incrementale sempre superiore all'altro. Il numero più grande è
il più recente.
detto questo mi piacerebbe creare una tabella di appoggio con tutti i dati
che mi servono e le date converitte in formato data.
se però, da un texbox con il formato data riesco a convertirlo nel formato
numerico con la stessa struttura va bene lo stesso.
Confronterò il numero anzichè la data.
Supponiamo volgia ricavare i dati di un certo periodo.
Se il campo è in formato numero dovrò selzionare i campi compresi per sempio
fra il numero 20070131 e il numero 20070310.
ferry
dateserial(right([mydata],2),mid([mydata],5,2),left([mydata],4))
dove [mydata] è la tua data aaaammgg
viceversa è sufficiente un
format([data],"yyyymmdd")
dove [data] è la data in formato date
nb. se le metti dentro una query al posto delle virgole ci vanno
puntievirgola.
utile?
ciao
Saverio
PBsoft
2007-09-23 08:50:03 UTC
Permalink
Post by Ferry
prima di tutto scusami ma il cmapo in oggetto e un numerico e non un
carattere.
Contento tu....
Post by Ferry
Il vantaggio di scrivere una data in forma numerica con questo metodo è che
ho unnumero incrementale sempre superiore all'altro. Il numero più
grande è il più recente.
Il vantaggio in questione non ha alcuna rilevanza, perché una data memorizzata
come testo, utilizzando il formato "aaaammgg" ti permette COMUNQUE di avere
un ordinamento "per data" proprio come faresti con un tipo numerico. Questo
ovviamente è possibile in base alla tabella ascii.
Aggiungo anche che, l'utilizzo di date in formato testo è consigliato anche
in ambienti più "seri" come SQL Server, dove il problema del formato di data
non è per niente banale e, per risolverlo, si consiglia l'utilizzo di date
in formato ISO.
Post by Ferry
detto questo mi piacerebbe creare una tabella di appoggio con tutti i dati
che mi servono e le date converitte in formato data.
Continui a non spiegare quello che vuoi ottenere e da dove stai partendo.
In questo modo è difficile darti una risposta utile.
Comunque, in VBA hai sia la possibilità di passare da una stringa "aaaammgg"
ad una data e viceversa, oppure da un numerico aaaammgg ad una data e viceversa.
Post by Ferry
se però, da un texbox con il formato data riesco a convertirlo nel formato
numerico con la stessa struttura va bene lo stesso.
Confronterò il numero anzichè la data.
Ma anche qui non si capisce per niente cosa vuoi fare e da dove parti: stavolta
parli di textbox, quindi sei in una form; prima hai parlato di campi, quindi
eri nella tabella.
Chiarezza!!!!

Rimane comunque valido quello che ti ho scritto poco sopra: il tipo di conversioni
che vuoi ottenere sono semplici mastruzzi con funzioni di base di Access.
Post by Ferry
Supponiamo volgia ricavare i dati di un certo periodo.
Se il campo è in formato numero dovrò selzionare i campi compresi per sempio
fra il numero 20070131 e il numero 20070310.
Non fai altro che avvalorare la mia tesi: il formato numerico non ti aiuta
più del formato testo.

--
PBsoft di Gabriele Bertolucci
www.pbsoft.it
skype:pbsoftsolution
Loading...