|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Приветствую! Комрады, задача нетривиальная: нужно получить дату с тем же месяцем и числом, отстоящую от нужной на определенное количество лет? То есть, к примеру, есть дата 01.01.1980. Нужно получить дату 01.01.2000. Формулы вида =A3+(20*365) не подходят, так как они не дадут нужный месяц и дату. _____________________ А что на самом деле хотел сказать "Frost_Imp" никто не знает, так как администрация форума попросила его быть вежливым. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 11:35 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
чем же она нетривиальная? функция DATEADD ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 11:46 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Что-то сходу не нашел формульный эквивалент (может плохо искал) Но можно так: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 11:50 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
можно попроще Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 11:52 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Frost_ImpОперации с датамии вообще ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 11:55 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Прибавить 7305. Предыдущий вопрос неактуален ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 12:00 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Frost_ImpПрибавить 7305.в некоторых случаях это даст неверный результат. Не говоря о том, что это не общее решение и справедливо только для 20 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 12:12 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Да, я понимаю. Я вот что пытаюсь сделать... Есть следующие даты: текущая дата, дата рождения и даты смены паспорта. Человек обязан менять паспорт в 20 и 45 лет. Я пытаюсь нарисовать методику определения действительности паспорта человека на произвольную дату. В экселе это получилось. Но переложить это нужно будет в PL SQL, в котором (скорее всего) операторов дат не будет. И оперировать придется разницами дат. Вот я и пытаюсь понять диапазоны разниц дат, при которых утверждение о действительности паспорта будет верным или не верным. Никак не ухвачу методику за хвост, хотя она, кажется, лежит на поверхности. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 12:41 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Р=Дата рождения П=Дата смены паспорта С=Сегодня заранее предполагается, что данные корректны: Р < П <= С Действителен=ЕСЛИ (С < Р + 20) ИЛИ (С < Р + 45 И П >= Р + 20) ИЛИ (П >= Р + 45) Кажется так. Не проверял и не заглядывал в ваш файл ) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 12:59 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Shocker.Pro, да нет. Вернее - да :) Для excel, у которого есть функции работы с датами, вопрос решен. Что делать, если с датами придется работать, как с числами? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 13:06 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Да, плюс к этому в той оракловской базе дата 01.01.1980 хранится как 19800101, число. Проще с ним работать, как с числом. Наверное ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 13:18 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Frost_Impдата 01.01.1980 хранится как 19800101, числоС этого надо было начинать. Это странно и глупо. Вы можете перейти на нормальные поля дат? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 13:38 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Shocker.Pro, это не моя база :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 14:44 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
Ну тогда надо сделать функцию преобразования этого числа в дату и оперировать функциями даты. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.09.2014, 14:58 |
|
excel. Операции с датами
|
|||
---|---|---|---|
#18+
А зачем преобразовывать в даты такие красивые числа? Я ведь уже как-то говорил, что мы придумывали там 13903561 как раз для определения возраста? Здесь получится ещё проще (именно используя то, что предложил Шокер): Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2014, 06:40 |
|
|
start [/forum/topic.php?fid=61&fpage=55&tid=2173848]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
23ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 288ms |
total: | 415ms |
0 / 0 |