Страницы: Пред. 1 2 3 След.
RSS
[ Закрыто ] Альтернатива РАЗНДАТ обычными формулами
 
Цитата
Сергей написал: вариант для дней для последнего примера
Для примера в стартпосте для ячейки C24 пишет 26, а должно быть 10 мес 26 дн. Скажите, пожалуйста, как поправить формулу?
Изменено: Лунтик - 12.02.2019 12:53:24
 
формула которая посчитывает месяца вас устраивает я так понял в сообщении я уточнил что моя формула для ДНЕЙ сцепите вместе предложенные ранее формулу месяца с моей
напрягитесь маленько
Лень двигатель прогресса, доказано!!!
 
Цитата
Сергей написал:
сцепите вместе предложенные ранее формулу месяца с моей
     Увы моих знаний не достаточно. Помогите, пожалуйста. Кажется понял. Сейчас попробую.
Изменено: Лунтик - 12.02.2019 13:00:40
 
Лунтик, уже смахивает на какую то х...ню после каждого предложенного решения у вас какие то проблемы повышайте знания форум в помощь
Лень двигатель прогресса, доказано!!!
 
Неа, не работает
Пишет чёрти-что - см файл, столбец K. Правильные варианты в столбце L. Скажите, пожалуйста, как поправить формулу?
 
.
Лень двигатель прогресса, доказано!!!
 
В принцепе нормально, но всё для ячейки C23 получается 4 мес 13 дн,  должно быть 4 мес 14 дн (см ячейку L23). Если не сложно - поправьте, пожалуйста.
 
Цитата
Лунтик написал:
получается 4 мес 13 дн,  должно быть 4 мес 14 дн (см ячейку L23)
Нет идей?
 
Цитата
Лунтик написал: Нет идей?
Цитата
Лунтик написал: В принцепе нормально
прицепите в конце формулы дней и играйтесь проверяйте
Код
+(ДЕНЬ(КОНМЕСЯЦА(C5;0))=30)
Изменено: Сергей - 12.02.2019 16:30:49
Лень двигатель прогресса, доказано!!!
 
Цитата
Сергей написал:
прицепите в конце формулы дней и играйтесь проверяйте
АЛЛЛУЙЯ!!! Огромнейше-приогромнейшее спасибо.
Изменено: Лунтик - 12.02.2019 16:48:22
 
       Возникла ошибка в реальном файле. В примере - для даты в ячейке C25 пишет 12 мес 29 дн, а должно быть 11 мес 29 дн. (ячейка L25). Поправьте формулу, пожалуйста.
Изменено: Лунтик - 12.02.2019 17:36:39
 
Лунтик, ну это уже издевательство какое-то...)  
 
Цитата
ADimov написал:
ну это уже издевательство какое-то...)  
Не издевательство. Просто я даже приблизительно не понимаю формулу, даже если рассматривать только для дней.
Помогите, пожалуйста.
Изменено: Лунтик - 13.02.2019 10:07:04
 
OFF: ADimov, давно …
Цитата
Сергей: … уже смахивает на какую то х...ню
:D  :D  :D
Изменено: Jack Famous - 13.02.2019 10:21:50
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
   Ребят, объясните, пожалуйста, хотя бы логику формулы. Мне не понятно - то отнимаем КОНМЕСЯЦА, то прибавляем. Объясните, пожалуйста. Для месяцев - РАЗОБРАЛСЯ и поправил. Теперь всё работает. Но не могли бы Вы объяснить, как работает формула для дней, пожалуйста?
Изменено: Лунтик - 13.02.2019 13:30:03
 
Лунтик, а кнопка "Вычислить формулу" не помогает?
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
а кнопка "Вычислить формулу" не помогает?
Сейчас не могу добраться до эксель пока что. А в OpenOffice этого нет. Да и эта кнопка показывает, какие происходят вычисления, а я не могу понять, почему именно такие вычисления. Объясните, пожалуйста.
Изменено: Лунтик - 13.02.2019 13:38:30
 
После прочтения темы возник вопрос: точно ли необходимо с одинаковой точностью вычислять большие и малые сроки действия сертификата?
Если срок составляет более месяца (нескольких месяцев, тем более года/лет), то уже не слишком важно насколько именно больше:
* до 31 дня - пишите ответ в днях точно (пусть даже в феврале и пройдет более месяца - не важно)
* более 31 дня - ответ "более одного месяца" (пусть даже прошел ровно один календарный месяц)
* более 60/90/.../330 дней - ответ "более 2/3/.../11 месяцев)
* более 360/720/... дней - ответ "более 1/2/... года/лет"

===============================Ревизия======================­============
Лунтик написал:
Для месяцев - РАЗОБРАЛСЯ и поправил. Теперь всё работает. Но не могли бы Вы объяснить, как работает формула для дней, пожалуйста?
Код
<...>&ДЕНЬ(C25)-ДЕНЬ(СЕГОДНЯ())+ЕСЛИ(ДЕНЬ(C25)<ДЕНЬ(СЕГОДНЯ());ДЕНЬ(КОНМЕСЯЦА(СЕГОДНЯ();0));0)&" дн "
Вторая часть формулы из столбца H (вычисление количества дней) работает следующим образом:
- вначале вычисляется разность между порядковым днем месяца даты окончания сертификата и порядковым днем текущего месяца
- если эта разница отрицательна, то к ней добавляется количество дней в текущем месяце; иначе не добавляется ничего
Изменено: IKor - 13.02.2019 13:56:35
 
Цитата
IKor написал:
Если срок составляет более месяца (нескольких месяцев, тем более года/лет), то уже не слишком важно насколько именно больше:
К сожалению так не подойдёт, ибо дальше эти сроки будут участвовать в других обработках и при Вашем варианте - в них очень возможна большая погрешность.
Цитата
IKor написал:
Вторая часть формулы из столбца H
Огромнейшее спасибо. Но формула сейчас чуть другая (см. файл из поста 41). Там несколько раз в формуле для дня используется КОНМЕСЯЦА(). Объясните, пожалуйста, зачем - логику в смысле? И в формуле для месяца я так и не понял, почему при вычитании вида: ДЕНЬ(С25)<=ДЕНЬ(СЕГОДНЯ()) вычитается 1 (единица)? Объясните, пожалуйста.
Изменено: Лунтик - 13.02.2019 14:28:17
 
Цитата
Лунтик написал:
К сожалению так не подойдёт, ибо дальше эти сроки будут участвовать в других обработках
Передавайте в дальнейшую обработку данные в днях, а для текущего отображения используйте округленные даты. Может быть даже получится использовать единую ячейку со спец. форматом для хранения точного значения и представления округленных результатов. Например, если результат менее 32 дней, то представлять его буквально; а если результат более 31 дня, то домножать его на минус единицу, но вместо отрицательного числа отображать текст "более месяца".
Но проще, разумеется, использовать пару ячеек: одну для отображения (округленное число месяцев-лет) и другую для передачи в дальнейшую обработку (точное число дней)

В отношении файла из #41 - укажите, пожалуйста, из какого столбца формула Вам не понятна - там из четыре...
 
Цитата
IKor написал:
В отношении файла из #41 - укажите, пожалуйста, из какого столбца формула Вам не понятна - там из четыре...
Столбец K.
 
Цитата
IKor написал:
Передавайте в дальнейшую обработку данные в днях
    Дело в том, что мне нужно 5 видов УФ, а при Вашем варианте будет сложно их реализовать, чтобы они не накладывались друг на друга.
 
Если Вы пойдете по пути хранения данных и представления приблизительных результатов в разных ячейках, то никто Вам не помешает использовать хоть пять, хоть больше условий для УФ. На мой взгляд сложность Вашей задачи заключается в том, что Вы хотите обрабатывать машинным кодом данные, адаптированные для человека.
Про формулу из столбца К - я разнес части этой формулы по разным ячейкам для более простого понимания, но до конца логику не постиг. Вероятно, для этого следует потратить больше времени, чем я готов сейчас потратить...
 
Цитата
IKor написал:
но до конца логику не постиг.
Большущее спасибо за уделённое время и дельные советы.
Ребята, - кто-то может объяснить формулу из столбца K?
Изменено: Лунтик - 13.02.2019 16:47:51
 
Off
Цитата
но до конца логику не постиг
=ЕСЛИ(C17="Нет";"ОТСУТСТВУЕТ";ЕСЛИ(ИЛИ(ГОД(C17)<ГОД(СЕГОДНЯ())...

=ЕСЛИ(C17="Нет";"ОТСУТСТВУЕТ";ЕСЛИ(ИЛИ(ГОД(C17)<ГОД(СЕГОДНЯ());И(ГОД(C17)=ГОД(СЕГОДНЯ());МЕСЯЦ(C17)<МЕСЯЦ(СЕГОДНЯ()));И(ГОД(C17)=ГОД(СЕГОДНЯ());МЕСЯЦ(C17)=МЕСЯЦ(СЕГОДНЯ())...

=ЕСЛИ(C17="Нет";"ОТСУТСТВУЕТ";ЕСЛИ(ИЛИ(ГОД(C17)<ГОД(СЕГОДНЯ());И(ГОД(C17)=ГОД(СЕГОДНЯ());МЕСЯЦ(C17)<МЕСЯЦ(СЕГОДНЯ()));И(ГОД(C17)=ГОД(СЕГОДНЯ());МЕСЯЦ(C17)=МЕСЯЦ(СЕГОДНЯ());ДЕНЬ(C17)<=ДЕНЬ(СЕГОДНЯ())));"ИСТЁК";12*(ГОД(C17)-ГОД(СЕГОДНЯ()))+МЕСЯЦ(C17)-МЕСЯЦ(СЕГОДНЯ())-(ДЕНЬ(C17)<ДЕНЬ(СЕГОДНЯ()))&" мес "&ЕСЛИ(ДЕНЬ(C17)<=ДЕНЬ(СЕГОДНЯ());КОНМЕСЯЦА(СЕГОДНЯ();0)-СЕГОДНЯ()+C17-ДАТА(ГОД(C17);МЕСЯЦ(C17);1)+1;ЕСЛИ(КОНМЕСЯЦА(СЕГОДНЯ();0)=КОНМЕСЯЦА(C17;0);C17-СЕГОДНЯ();ОСТАТ(C17-КОНМЕСЯЦА(C17;-1)+КОНМЕСЯЦА(СЕГОДНЯ();0)-СЕГОДНЯ();31)))+(ДЕНЬ(КОНМЕСЯЦА(C17;0))=30)&" дн"))
 
Цитата
magistor8 написал:
Off
Первая часть - понята. Мне интересует логика формулы внутри ЕСЛИ():
Код
12*(ГОД(C17)-ГОД(СЕГОДНЯ()))+МЕСЯЦ(C17)-МЕСЯЦ(СЕГОДНЯ())-(ДЕНЬ(C17)<ДЕНЬ(СЕГОДНЯ()))&" мес "&ЕСЛИ(ДЕНЬ(C17)<=ДЕНЬ(СЕГОДНЯ());КОНМЕСЯЦА(СЕГОДНЯ();0)-СЕГОДНЯ()+C17-ДАТА(ГОД(C17);МЕСЯЦ(C17);1)+1;ЕСЛИ(КОНМЕСЯЦА(СЕГОДНЯ();0)=КОНМЕСЯЦА(C17;0);C17-СЕГОДНЯ();ОСТАТ(C17-КОНМЕСЯЦА(C17;-1)+КОНМЕСЯЦА(СЕГОДНЯ();0)-СЕГОДНЯ();31)))+(ДЕНЬ(КОНМЕСЯЦА(C17;0))=30)&" дн"

Объясните, пожалуйста.

 
Тему Владимира все равно попортили
по сему Аксиома
Изменено: БМВ - 13.02.2019 17:33:22
По вопросам из тем форума, личку не читаю.
 
Я думаю Лунтик, решение получил а тему можно почистить от лишнего
Лень двигатель прогресса, доказано!!!
 
Цитата
БМВ написал: Тему Владимира все равно попортили
Михаил, я открывал тему и предложил вариант именно по названию темы "Альтернатива РАЗНДАТ обычными формулами"
Здесь же давно отошли от темы и пишут что хотят :) вместо того, чтобы создавать свои темы и обсуждать это там, как предписано правилами. Поэтому не соучаствую уже, как и Вы.
Изменено: ZVI - 13.02.2019 17:58:33
 
ZVI, Владимир эта тема была тематической пока вы не упомянули Лунтик,
Лень двигатель прогресса, доказано!!!
Страницы: Пред. 1 2 3 След.
Наверх