Dyadya Zed
Дата: 04.06.2004 16:41:54
Есть такая ф-ция в Access XP:
Public Const LANG_DEFAULT = &H400
Public Const LANG_ENGLISH_US = &H409
Public Const LANG_RUSSIAN = &H419
Public Const LANG_UKRAINIAN = &H422
Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type
Declare Function GetDateFormat Lib "kernel32" Alias "GetDateFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, lpDate As SYSTEMTIME, ByVal lpFormat As String, ByVal lpDateStr As String, ByVal cchDate As Long) As Long
Public Function GetStringFromDate(lLangID As Long, dtDate As Variant, strFormat As String) As String
Dim stSysDate As SYSTEMTIME
Dim strResult As String * 256
Dim lBufSize As Long, lRetVal As Long
GetStringFromDate = ""
If Not IsDate(dtDate) Then Exit Function
stSysDate.wDay = Day(dtDate)
stSysDate.wMonth = Month(dtDate)
stSysDate.wYear = Year(dtDate)
lBufSize = 256
lRetVal = GetDateFormat(lLangID, 0, stSysDate, strFormat, strResult, lBufSize)
If lRetVal <> 0 Then GetStringFromDate = strResult
End Function
В базу все выдает отлично..
Результат ф-ции такой "17 липня, 2003"
Когда пытаюсь данные экспортировать через объекты офиса в Word XP (как в книге Гетца написано), всё передается нормально, но поле обрабатываемое этой ф-цией в результате выдает после текста "17 липня, 2003" штук 100-200 квадратиков...
Как с этим бороться??? Хееелп!