Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Есть ли такая стандартная функция с датой? / 14 сообщений из 14, страница 1 из 1
26.12.2003, 09:22
    #32364001
Maria K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Мне нужно вывести дату в отчет на русском языке: 26 декабря 2003 года.
Все даты выводятся либо просто числами, либо на английском языке!!! Хелп!
...
Рейтинг: 0 / 0
26.12.2003, 09:24
    #32364002
Maria K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
и на английском тоже нужно
...
Рейтинг: 0 / 0
26.12.2003, 09:26
    #32364005
Savik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
А что, так сложно написать функцию, которая заменяет feb на февраль и т.д.?

...
Рейтинг: 0 / 0
26.12.2003, 09:27
    #32364006
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
> либо на английском языке

Если бы твой Виндоус был китайским, то даты тоже были бы на китайском. Вот такая закономерность между языком виндоуса и форматированием дат.
...
Рейтинг: 0 / 0
26.12.2003, 09:30
    #32364011
Maria K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Ну сложно мне написать функцию, ну не умею я. в основном только стандартными пользоюсь. Ну подскажите, где, как и че написать, плз
...
Рейтинг: 0 / 0
26.12.2003, 09:30
    #32364012
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
А использовать длинный формат даты не пробовали?
...
Рейтинг: 0 / 0
26.12.2003, 09:31
    #32364014
Maria K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
нужна сегодняшняя дата
...
Рейтинг: 0 / 0
26.12.2003, 09:32
    #32364016
Maria K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
ну вот в отчете пишу =Now() или =Date(). А сейчас что надо?
...
Рейтинг: 0 / 0
26.12.2003, 09:34
    #32364018
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
=Date ()
А в свойствах, формат поля выбираете тот формат, который вам нравиться.
...
Рейтинг: 0 / 0
26.12.2003, 09:36
    #32364023
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Можно также
= Now()
...
Рейтинг: 0 / 0
26.12.2003, 09:51
    #32364044
Alex_2003
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Dim dateNow as String

dateNow=Format(Date,"dd mmmm yyyy")
...
Рейтинг: 0 / 0
26.12.2003, 09:59
    #32364056
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Насоветовали блин кучу всего. И все равно, "если бы твой Виндоус был китайским, то даты тоже были бы на китайском"

Можно через API добраться до представления даты в любом (имеющимся в системе) NLS.
Можно воспользоваться советом Савика - принудительно менять названия месяцев.
Стандартой функции (форматирование даты под заданные Regional Settings) в аксесе нет.
...
Рейтинг: 0 / 0
26.12.2003, 10:07
    #32364065
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
До API добраться совсем не сложно

Объявления:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
Option Compare Database
Option Explicit
 
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 Date, strFormat As String) As String
 Dim stSysDate As SYSTEMTIME
 Dim strResult As String *  256 
 Dim lBufSize As Long, lRetVal As Long
 
 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

Это использование:
Код: plaintext
MsgBox GetStringFromDate(LANG_UKRAINIAN, date,  "dd MMMM yyyy" )


Это описание символов строки формата:

Use the following elements to construct a format picture string. If you use
spaces to separate the elements in the format string, these spaces will
appear in the same location in the output string. The letters must be in
uppercase or lowercase as shown in the table (for example, "MM" not "mm").
Characters in the format string that are enclosed in single quotation marks
will appear in the same location and unchanged in the output string.

d Day of month as digits with no leading zero for single-digit days.
dd Day of month as digits with leading zero for single-digit days.
ddd Day of week as a three-letter abbreviation.
dddd Day of week as its full name.
M Month as digits with no leading zero for single-digit months.
MM Month as digits with leading zero for single-digit months.
MMM Month as a three-letter abbreviation.
MMMM Month as its full name.
y Year as last two digits, but with no leading zero for years less than 10.
yy Year as last two digits, but with leading zero for years less than 10.
yyyy Year represented by full four digits.

For example, to get the date string

"Wed, Aug 31 94"
use the following picture string:

"ddd',' MMM dd yy"
...
Рейтинг: 0 / 0
26.12.2003, 11:33
    #32364218
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть ли такая стандартная функция с датой?
Ну. зачем вы мучаете женщину API, нехорошо.

Марина вставьте в стандартный модуль следующий код, просто скопируйте его в тело модуля

Public Function zaq(datNew As Date) As String
Dim dat As Date, dat1 As String, dat2 As String, dat3 As String
dat = Format(datNew, "dd mm yy")
dat3 = Right(dat, 2)
dat1 = Left(dat, 2)
dat2 = Left(Right(dat, 5), 2)
Select Case dat2
Case 1
zaq = dat1 & " " & "января" & " " & dat3
Case 2
zaq = dat1 & " " & "февраля" & " " & dat3
Case 3
zaq = dat1 & " " & "марта" & " " & dat3
Case 4
zaq = dat1 & " " & "апреля" & " " & dat3
Case 5
zaq = dat1 & " " & "мая" & " " & dat3
Case 6
zaq = dat1 & " " & "июня" & " " & dat3
Case 7
zaq = dat1 & " " & "июля" & " " & dat3
Case 8
zaq = dat1 & " " & "августа" & " " & dat3
Case 9
zaq = dat1 & " " & "сентября" & " " & dat3
Case 10
zaq = dat1 & " " & "октября" & " " & dat3
Case 11
zaq = dat1 & " " & "ноября" & " " & dat3
Case 12
zaq = dat1 & " " & "декабря" & " " & dat3
Case Else
End Select
End Function

Может переменных и слишком много, но я писал с налёту, главное, что это работает

В отчёте создайте поле с данными NOW(), затем создайте поле, где в качестве данных будет эта функция (вы её увидите не во встроенных функциях, а в функциях самой базы), а в качестве аргумента - значение поля с NOW(). Наверное Вы видите, что название месяцев в этом случае можно написать хоть на китайском, если Вы его знаете. Поле c NOW() можно сделать невидимым или оставить, как хотите.
Предвидя гневные обвинения в излишней усложнённости, скажу, что не старался оптимизировать задачу, просто хотел сделать понагляднее.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Есть ли такая стандартная функция с датой? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]