Access – Konverzija tekst-polja u datumski format

Kada budete konvertovali baze podataka i tabele iz nekog drugog formata (dBase, Paradox…) u Access format, možda će vam se javiti potreba da promenite datumska polja koja su u tekstualnom formatu (moguće kombinacije MMDDYY ili DDMMYY) u „pravo“ datumsko polje. Kako izvršiti ovakvu konverziju u Accessu?

U slučaju da imate podatke (slogove) u tabeli koji se čuvaju u tekst-polju, u odgovarajućem kratkom formatu datuma (recimo DD/MM/YY), možete jednostavno modifikovati strukturu tabele u dizajn modu. Treba da promenite osobinu tipa podatka u Date/Time format, i tačnije Short Date format, a Access će odraditi konverziju za vas.

A da biste došli do ove tačke, preporučujemo tri koraka. Prvo, preuzmite podatke iz tekst-polja i to u originalnom DDMMYY formatu, najverovatnije putem uvoza podataka (importovanja). Zatim, upotrebite UPDATE vrstu upita za ubacivanje "/", tako da datum bude u odgovarajućem short-date formatu. I treće, modifikujte strukturu tabele, kao što smo već naveli: promenite format polja u Date/Time i detaljnije u Short Date format datuma.

UPDATE upit bi trebalo da izgleda slično ovome, pretpostavljajući da polje ima naziv txtDatum, a tabela Tabela:


UPDATE Tabela SET txtDatum =
Left([txtDatum],2)+"/"
+Mid([txtDatum],3, 2)+"/"
+Right([txtDatum],2);

Ukoliko ćete konverziju obaviti funkcijom, trebalo bi da tekstualno polje DDMMYY formata odradite sledećom funkcijom:


Public Function TekstUDatum(strDDMMYY)
‘***********************************
‘ Public Function TekstUDatum(strDDMMYY)
‘ konverzija teksta u format DDMMYY
kao datumski tip podatka
‘***********************************
Dim strDatum As String, dtmDatum As Date

strDatum = Left([strDDMMYY], 2)
+ „/“ + Mid([strDDMMYY], 3, 2)
+ _ „/“ + Right([strDDMMYY], 2)

dtmDatum= CDate(strDatum)
Text2Date = dtmDatum

End Function

Pratite Krstaricu na www.krstarica.com