powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Нужна формула для расчета возраста
14 сообщений из 14, страница 1 из 1
Нужна формула для расчета возраста
    #39347571
olga.a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Помогите, пожалуйста, решить задачку. Есть в таблице поле "Дата рождения", (dd.mm.yyyy). Надо добавить поле где будет автоматически рассчитываться возраст на текущий момент. Но возраст должен прописываться так: 5 лет 6 мес. Как написать такую формулу?
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347611
olga.a,

3244468
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347782
Фотография Лапух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olga.a,

В запросе, в режиме конструктора, в свободном поле:
Полных Лет

Возраст: IIf((Month(Now())>Month([ДатаРождения]) Or (Month(Now())=Month([ДатаРождения])) And (Day(Now())>Day([ДатаРождения]) Or Day(Now())=Day([ДатаРождения])));Year(Now())-Year([ДатаРождения]);Year(Now())-Year([ДатаРождения])-1)
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347884
ИВП.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Лапух,
1) ТС просит указывать словами количество месяцев.
2) Разве
Код: sql
1.
Month(Now())>Month([ДатаРождения]) Or Month(Now())=Month([ДатаРождения])

не тоже самое, что
Код: sql
1.
Month(Now())>=Month([ДатаРождения]) 

?
3) Разве
Код: sql
1.
Day(Now())>Day([ДатаРождения]) Or Day(Now())=Day([ДатаРождения])

не тоже самое, что
Код: sql
1.
Day(Now())>=Day([ДатаРождения])

?
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347890
Фотография Лапух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИВП.,
У меня фамилия - Торопыгин, соответственно как всегда прочитал вопрос наискосок и не полностью.
Увидел что - Расчитать возраст, по этому дальше читать не стал, а дал выражение для расчета - ПОЛНЫХ ЛЕТ.
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347894
Фотография Лапух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИВП....разве не тоже самое, что...
А вы проверьте эксперементальным путём по нескольким датам и месяцам, до и после сегоднящней.
Вашим выражением и тем что было представлено мной.
Сразу скажу, что оно не мной изобретено, а то как всегда терзать начнете и клевать печень как Прометею в мультике.
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39347898
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лапухкак всегда прочитал вопрос наискосок и не полностью

я так все книги читаю, особенно по программированию
--первое чтение --быстрое, обзорное(все равно ничего не понять),но запоминается что и где написано
--затем, когда в программе что-то потребуется --я примерно знаю, где искать, тогда уже читаю это место подробно, вникаю в нюансы
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348010
studieren
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olga.aДобрый день.
Помогите, пожалуйста, решить задачку. Есть в таблице поле "Дата рождения", (dd.mm.yyyy). Надо добавить поле где будет автоматически рассчитываться возраст на текущий момент. Но возраст должен прописываться так: 5 лет 6 мес. Как написать такую формулу?
Чем не устраивает решение "в лоб"?
Код: vbnet
1.
Format(Date()-[Дата рождения], "YY") & " лет " & Format(Date()-[Дата рождения], "M") & " мес."
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348635
studierenЧем не устраивает решение "в лоб"?
Код: vbnet
1.
Format(Date()-[Дата рождения], "YY") & " лет " & Format(Date()-[Дата рождения], "M") & " мес."


Наверное, тем, что при использовании данного выражения можно получить неожиданные результаты:

Дата рожденияВозраст16.11.199619 лет 12 мес.30.11.199619 лет 12 мес.01.12.199619 лет 12 мес.16.12.199619 лет 12 мес.15.11.201699 лет 12 мес.
Текущая дата расчета - 16.11.2016
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348643
-Практикант-,

а в таком варианте

Код: sql
1.
format(#12/31/1999#+(date()-[дата рождения]),"YY")
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348684
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
olga.a,
из избранного (решение от Анатолия (Киев))
http://am.rusimport.ru/MSAccess/f2.aspx?type=1&id=49271
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348757
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olga.a....Есть в таблице поле "Дата рождения", (dd.mm.yyyy). Надо добавить поле...Почитайте это и решите нужно ли добавлять такое поле в таблицу
Достаточно иметь в базе функцию.(образцы Вам рекомендовали)
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348877
Guest Валерий-Практикант-,

а в таком варианте

Код: sql
1.
format(#12/31/1999#+(date()-[дата рождения]),"YY")


Код: vbnet
1.
2.
3.
4.
birthdate=#03/01/2014#
testdate=#03/02/2015#
?format(#12/31/1999#+(testdate-birthdate),"YY")
00


Кроме того, ущемляются права долгожителей (100 и более лет) на получение достоверной информации :)

Как уже говорили, ТС просил количество лет и месяцев между двумя датами.
...
Рейтинг: 0 / 0
Нужна формула для расчета возраста
    #39348984
-Практикант-,

Код: sql
1.
 dateDiff('YYYY', bd, date()) + iif(date()<DateSerial(Year(date()), Month(bd), Day(bd)),-1,0)  & ' лет ' &  (dateDiff('M', bd, date()) + iif (DatePart('d', bd) > DatePart('d', Date()),-1,0))  mod 12 & ' мес.' as sAge,



правда для еще не рожденных фигню выводит но можно обойти еще одним iif
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Нужна формула для расчета возраста
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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