Как код VBA - вы можете обернуть его как функцию
Dim strMyDate As String
Dim dteDate As Date
strDate = "20090528"
dteDate = DateSerial(Left(strDate, 4), Mid(strDate, 5, 2), Right(strDate, 2))
MyStr = Format(dteDate, "dd-mmm-yyyy")
Debug.Print MyStr
Как тип данных в таблице - Если вы добавляете данные в таблицу, в которой поле имеет формат даты / времени, вы можете указать формат в форме / таблице, т.е. во время вывода.