Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/формула для распределения общего количества на равные части - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
формула для распределения общего количества на равные части
creyc12 Дата: Суббота, 20.08.2022, 16:18 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
https://docs.google.com/spreads....6616870 Здравствуйте! помогите пожалуйста с формулой для распределения общего количества на заданный период только по рабочим дням. в MS Exel формула работает, но в гугол нет. Спасибо
 
Ответить
Сообщениеhttps://docs.google.com/spreads....6616870 Здравствуйте! помогите пожалуйста с формулой для распределения общего количества на заданный период только по рабочим дням. в MS Exel формула работает, но в гугол нет. Спасибо

Автор - creyc12
Дата добавления - 20.08.2022 в 16:18
Gustav Дата: Суббота, 20.08.2022, 17:15 | Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2808
Репутация: 1184 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Здравствуйте, а покажите, что в Excel работает? И в какой ячейке Гугл смотреть, что НЕ работает?

[p.s.]Разобрался. Да, запутку, конечно, капитальную устроили - с форматированием (и его восприятием) перестарались - бывает![/p.s.]

Но по порядку. Смотрите, есть несколько вариантов исправления ситуации.

Вариант 1. Ничего больше нигде не трогая (хотя руки чешутся сразу), просто меняем формулу в ячейке F3
с имеющейся:
Код
=IF(OR(F$1="Вс";F$1="Сб");"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
на такую:
Код
=IF(OR(F$1=7;F$1=1);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
И распространяем (копируем, протягиваем) формулу вправо на все дни месяца.

Вариант 2. Также меняем только формулу в F3 на такую:
Код
=IF(OR(WEEKDAY(F$2;2)=7;WEEKDAY(F$2;2)=6);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
Обратите внимание, что в условии OR теперь проверяются ячейки второй строки, а не первой.

Вариант 3. Ячейку F3 не трогаем - используем Вашу исходную формулу:
Код
=IF(OR(F$1="Вс";F$1="Сб");"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
Но в ячейку F1 вместо имеющейся там формулы (весьма странной, с зачем-то опоясывающей функцией INDEX, да еще и без параметров):
Код
=INDEX(WEEKDAY(F2;1))
помещаем такую формулу выбора:
Код
=CHOOSE(WEEKDAY(F2;2);"пн";"вт";"ср";"чт";"пт";"сб";"вс")
Обратите внимание, что в новой формуле второй параметр изменился с 1 на 2 - каким он и должен быть при начале недели с понедельника.

Вариант 4.Для ячейки F3 используем формулу из варианта 2:
Код
=IF(OR(WEEKDAY(F$2;2)=7;WEEKDAY(F$2;2)=6);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
А для ячейки F1 (упс!) - совсем простую:
Код
=F2


Если еще не поняли, что за "запутка" у Вас получилась, то дело в следующем. Вы получаете в первой строке с помощью функции WEEKDAY числа от 1 до 7, которые соответствуют датам начала прошлого века - с 31.12.1899 по 06.01.1900. А затем с помощью формата "день недели из двух букв" форматируете эти даты начала прошлого века. В итоге в первой строке вроде бы и правильно отображаются названия дней недели, но фактические значения ячеек при этом равны числам - от 1 до 7. Их и надо было бы использовать в функции ИЛИ(OR) вместо значений "Вс" и "Сб" (как это было показано в варианте 1).


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Суббота, 20.08.2022, 19:08
 
Ответить
СообщениеЗдравствуйте, а покажите, что в Excel работает? И в какой ячейке Гугл смотреть, что НЕ работает?

[p.s.]Разобрался. Да, запутку, конечно, капитальную устроили - с форматированием (и его восприятием) перестарались - бывает![/p.s.]

Но по порядку. Смотрите, есть несколько вариантов исправления ситуации.

Вариант 1. Ничего больше нигде не трогая (хотя руки чешутся сразу), просто меняем формулу в ячейке F3
с имеющейся:
Код
=IF(OR(F$1="Вс";F$1="Сб");"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
на такую:
Код
=IF(OR(F$1=7;F$1=1);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
И распространяем (копируем, протягиваем) формулу вправо на все дни месяца.

Вариант 2. Также меняем только формулу в F3 на такую:
Код
=IF(OR(WEEKDAY(F$2;2)=7;WEEKDAY(F$2;2)=6);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
Обратите внимание, что в условии OR теперь проверяются ячейки второй строки, а не первой.

Вариант 3. Ячейку F3 не трогаем - используем Вашу исходную формулу:
Код
=IF(OR(F$1="Вс";F$1="Сб");"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
Но в ячейку F1 вместо имеющейся там формулы (весьма странной, с зачем-то опоясывающей функцией INDEX, да еще и без параметров):
Код
=INDEX(WEEKDAY(F2;1))
помещаем такую формулу выбора:
Код
=CHOOSE(WEEKDAY(F2;2);"пн";"вт";"ср";"чт";"пт";"сб";"вс")
Обратите внимание, что в новой формуле второй параметр изменился с 1 на 2 - каким он и должен быть при начале недели с понедельника.

Вариант 4.Для ячейки F3 используем формулу из варианта 2:
Код
=IF(OR(WEEKDAY(F$2;2)=7;WEEKDAY(F$2;2)=6);"";IF(F$2>=$C3;IF(F$2<=$D3;$B3/$E3;"");""))
А для ячейки F1 (упс!) - совсем простую:
Код
=F2


Если еще не поняли, что за "запутка" у Вас получилась, то дело в следующем. Вы получаете в первой строке с помощью функции WEEKDAY числа от 1 до 7, которые соответствуют датам начала прошлого века - с 31.12.1899 по 06.01.1900. А затем с помощью формата "день недели из двух букв" форматируете эти даты начала прошлого века. В итоге в первой строке вроде бы и правильно отображаются названия дней недели, но фактические значения ячеек при этом равны числам - от 1 до 7. Их и надо было бы использовать в функции ИЛИ(OR) вместо значений "Вс" и "Сб" (как это было показано в варианте 1).

Автор - Gustav
Дата добавления - 20.08.2022 в 17:15
creyc12 Дата: Понедельник, 22.08.2022, 08:09 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Спасибо огромное!!!
 
Ответить
СообщениеСпасибо огромное!!!

Автор - creyc12
Дата добавления - 22.08.2022 в 08:09
Gustav Дата: Понедельник, 22.08.2022, 14:01 | Сообщение № 4
Группа: Админы
Ранг: Участник клуба
Сообщений: 2808
Репутация: 1184 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Ну, вот, произошло то, чего я обычно боюсь и почему так подробно комментирую свои формулы. Пользователь закрыл доступ к своему файлу после получения ответа. Конечно, он имеет на это безусловное право, но будущему читателю этой темы лучше видеть ситуацию, с которой столкнулись, своими глазами. Поэтому у меня есть привычка для таких случаев делать свою копию материала, чем я сейчас и воспользуюсь.

Вот ссылка на мою демо-копию исходного файла вопроса:
https://docs.google.com/spreads....6616870
Файл не содержит какой-либо конфиденциальной информации, поэтому выкладываю его без страха и упрёка.

И еще, поскольку публикуемые здесь ссылки (замечено!) имеют свойство со временем портиться и переставать работать, дополнительно выкладываю 44-символьный Id таблицы Google:
[vba]
Код
1wH5s6LlJTbaa67r3VMevbAal5-1xW16ePFbV0_uhf2U
[/vba]


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеНу, вот, произошло то, чего я обычно боюсь и почему так подробно комментирую свои формулы. Пользователь закрыл доступ к своему файлу после получения ответа. Конечно, он имеет на это безусловное право, но будущему читателю этой темы лучше видеть ситуацию, с которой столкнулись, своими глазами. Поэтому у меня есть привычка для таких случаев делать свою копию материала, чем я сейчас и воспользуюсь.

Вот ссылка на мою демо-копию исходного файла вопроса:
https://docs.google.com/spreads....6616870
Файл не содержит какой-либо конфиденциальной информации, поэтому выкладываю его без страха и упрёка.

И еще, поскольку публикуемые здесь ссылки (замечено!) имеют свойство со временем портиться и переставать работать, дополнительно выкладываю 44-символьный Id таблицы Google:
[vba]
Код
1wH5s6LlJTbaa67r3VMevbAal5-1xW16ePFbV0_uhf2U
[/vba]

Автор - Gustav
Дата добавления - 22.08.2022 в 14:01
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!