Pagina 1 di 1

[Access] Problema con le date

MessaggioInviato: ven gen 14, 2005 10:56 am
da yeah782000
raga....

ho importato in Access dei dati da Excel

L'import e' andato a buon fine ...

Il mio problema pero' e' questo.... C'e un campo data che in Excel presenta solo giorno e mese...

Se imposto in Access questo campo come "data" il sistema mi inserisce automaticamente l'anno 2005 anche se in realta' si tratta di date relative al 2003. Come posso fare per selezionare tutte le date dicendo ad Access di aggiungere anno 2003 a tutti i campi importati senza farlo a manella ???
Devo fare una query di aggiornamento ?

Grazie a tutti

MessaggioInviato: ven gen 14, 2005 11:38 am
da GoNZo
Usa una query:

UPDATE Tabella1 SET Tabella1.Data = Left([Tabella1]![Data],9)+'3'
WHERE (((Right([Tabella1]![Data],1))='5'));


Dove Tabella1 è la tua tabella e Data è il campo con la data da cambiare...

MessaggioInviato: ven gen 14, 2005 11:52 am
da yeah782000
questo e' il codice che ho scritto:

UPDATE prova SETprova.Data = Left([prova]![Data],9)+'3'
WHERE (((Right([prova]![Data],1))='5'));

Dove "prova" e' la tabella e "data" il campo data con proprieta' "data in cifre".

Mi restituisce pero' l'errore "Errore di sintassi nell'istruzione UPDATE".

Help me

MessaggioInviato: ven gen 14, 2005 11:53 am
da yeah782000
oddio scusami ....... avevo tolto uno spazio....

funziona alla grande .... grazie 1000 amico !!!!!

MessaggioInviato: ven gen 14, 2005 12:15 pm
da yeah782000
perdonami la domanda stupida...

se anziche' aggiornare il campo con 2003 volessi aggiornarlo con 2004 ?

Cos'e' che devo cambiare ?

Grazie 1000

MessaggioInviato: ven gen 14, 2005 12:36 pm
da Ices_Eyes
Cambi il tre con il 4 nella query... [:-D]

MessaggioInviato: ven gen 14, 2005 12:58 pm
da GoNZo
Esatto...prego, figurati!!!

MessaggioInviato: ven gen 14, 2005 1:33 pm
da yeah782000
alla grande ragazzi !!!!!

una query simile applicata pero' ad un numero così visualizzato in access:

06310+++

Come faccio a dire ad access di spostituire i +++ con tre zeri ?

Quindi 06310+++ diventerebbe 06310000

Grazie ancora

MessaggioInviato: ven gen 14, 2005 2:47 pm
da Ices_Eyes
GoNZo ha scritto:UPDATE Tabella1 SET Tabella1.Data = Left([Tabella1]![Data],9)+'3'
WHERE (((Right([Tabella1]![Data],1))='5'));

Facciamo così, vediamo se riesco...Ti spigo il contenuto della query così poi puoi modificartela come credi...
Update....Set... credo tu sappia cosa significano, poi
Left(..., x): prendi gli x caratteri a partire da sinistra (nel tuo caso 9, gg/mm/aaa) e aggiungici un 3 (+ '3') (questo fa diventare il tutto del tipo, nel tuo caso, gg/mm/aaa3)
Where ecc...: dove l'ultimo carattere a destra della stringa Tabella.data è 5!
E' un po' chiaro adesso? Per fare quello che vuoi tu quindi devi dirgli
Codice: Seleziona tutto
UPDATE Tabella SET Tabella.campo = Left([Tabella]![campo],5)+'000'
WHERE (((Right([Tabella]![campo],3))='+++'));

Si può fare anche in altri modi, ma il risultato è lo stesso...

Ciao [^]

MessaggioInviato: ven gen 14, 2005 2:52 pm
da yeah782000
grazie Ices_Eyes ....


ho capito la sintassi ....thankkkssssssss !!!! [applauso]