Делаю электронную ведомость по сдачи по физической подготовке, столкнулся с такой проблемой Кросс 5 КМ, при выставлении времени заданной ячейки автоматом выставлялась оценка. В принципе ничего сложно. Вот пример: =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=23,3;5;ЕСЛИ(RC[-1]<=25;"4";ЕСЛИ(RC[-1]<=26;"3";"2")))) Стал в другом вопрос, для разных весовых категорий (их две) привязать свое время. 1 категория оценка 3 - время 26 мин. 4- 25 5- 23,3 2 категория оценка 3 - время 24 мин. 4- 23,1 5- 22,2 Категория выбирается в отдельной ячейки до 85 кг. (включительно) свыше 85 кг. Всю головы сломал!
Делаю электронную ведомость по сдачи по физической подготовке, столкнулся с такой проблемой Кросс 5 КМ, при выставлении времени заданной ячейки автоматом выставлялась оценка. В принципе ничего сложно. Вот пример: =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=23,3;5;ЕСЛИ(RC[-1]<=25;"4";ЕСЛИ(RC[-1]<=26;"3";"2")))) Стал в другом вопрос, для разных весовых категорий (их две) привязать свое время. 1 категория оценка 3 - время 26 мин. 4- 25 5- 23,3 2 категория оценка 3 - время 24 мин. 4- 23,1 5- 22,2 Категория выбирается в отдельной ячейки до 85 кг. (включительно) свыше 85 кг. Всю головы сломал!hardl
Каким образом? Думаю что машина не поймет по какому весу оценивать данного человека, Вес у всех разный. 1 вариант оцениваются спортсмены для свыше 85 кг вот пример: =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=23,3;5;ЕСЛИ(RC[-1]<=25;"4";ЕСЛИ(RC[-1]<=26;"3";"2")))) Вот 2 вариант =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=22,2;5;ЕСЛИ(RC[-1]<=23,1;"4";ЕСЛИ(RC[-1]<=24;"3";"2")))) Вот как мне сделать, чтобы при выборе в ячейке «Вес» 85 или 84 менялась формула 1 варианта или 2 варианта в зависимости от выбранного веса спортсмена. В ячейке «Вес» стоит список.
Каким образом? Думаю что машина не поймет по какому весу оценивать данного человека, Вес у всех разный. 1 вариант оцениваются спортсмены для свыше 85 кг вот пример: =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=23,3;5;ЕСЛИ(RC[-1]<=25;"4";ЕСЛИ(RC[-1]<=26;"3";"2")))) Вот 2 вариант =ЕСЛИ(RC[-1]=0;"не прибыл";ЕСЛИ(RC[-1]<=22,2;5;ЕСЛИ(RC[-1]<=23,1;"4";ЕСЛИ(RC[-1]<=24;"3";"2")))) Вот как мне сделать, чтобы при выборе в ячейке «Вес» 85 или 84 менялась формула 1 варианта или 2 варианта в зависимости от выбранного веса спортсмена. В ячейке «Вес» стоит список.hardl
при выборе в ячейке «Вес» 85 или 84 менялась формула
Я так понял, что должно быть не 84 и 85, а 84 и 85,1 В любом случае, см. формулу в моем посте выше (а 85 или 85,1 это можно подправить - > или >=)
Quote (hardl)
при выборе в ячейке «Вес» 85 или 84 менялась формула
Я так понял, что должно быть не 84 и 85, а 84 и 85,1 В любом случае, см. формулу в моем посте выше (а 85 или 85,1 это можно подправить - > или >=)_Boroda_
Ветеран ты гений, только объясни как это смастерил: ПРОСМОТР(H13-0,01;ЕСЛИ(G13>85;{-0,01;0,01;22,2;23,1;24};{-0,01;0,01;23,3;25;26});{"не прибыл";5;4;3;2}) функция "Просмотр"; Н13 - ячейка; 0,01 - что это, предполагаю единица времени? ;{-0,01;0,01;22,2;23,1;24} – это что? Я не понял -0,01;0,01 дальше идет время, {"не прибыл";5;4;3;2} – это оценки!
Ветеран ты гений, только объясни как это смастерил: ПРОСМОТР(H13-0,01;ЕСЛИ(G13>85;{-0,01;0,01;22,2;23,1;24};{-0,01;0,01;23,3;25;26});{"не прибыл";5;4;3;2}) функция "Просмотр"; Н13 - ячейка; 0,01 - что это, предполагаю единица времени? ;{-0,01;0,01;22,2;23,1;24} – это что? Я не понял -0,01;0,01 дальше идет время, {"не прибыл";5;4;3;2} – это оценки!hardl
Ветеран вот в этом примере =ПРОСМОТР(RC[-1]-0,01;ЕСЛИ(RC[-2]>85;{-0,01;0;22,2;23,1;24};{-0,01;0;23,3;25;26});{"не прибыл";5;4;3;2}) что это? Не могу понять!
Ветеран вот в этом примере =ПРОСМОТР(RC[-1]-0,01;ЕСЛИ(RC[-2]>85;{-0,01;0;22,2;23,1;24};{-0,01;0;23,3;25;26});{"не прибыл";5;4;3;2}) что это? Не могу понять!hardl
1) H13-0,01 - это то, что ищем. Если бы условие было, например, не <=23,3, а <23,3, то написали бы просто H13 2) если G13 >85, то ищем в массиве {-0,01;0;22,2;23,1;24}, если <=85, то в {-0,01;0;23,3;25;26} 3) {"не прибыл";5;4;3;2} - это массив того, что нужно, чтобы вывелось в ячейке
Что такое {-0,01;0;22,2;23,1;24}? У нас есть 5 возможных вариантов оценок - 2,3,4,5,"не прибыл". Каждому из них ставим в соответствие МИНИМАЛЬНОЕ время, при котором эта оценка может быть поставлена (с учетом того, что в искомом значении у нас стоит еще -0,01). ПРОСМОТР работает так: находит из массива для просмотра 2) максимальное число, меньшее или равное искомого значения 1), запоминает его порядковый номер и выводит из массива для вывода 3) значение с этим порядковым номером. А 0,01 - это смещение на 1 секунду назад. Для того, чтобы точно попадающие значения были бы в нужной категории (например, 26 у нас по условию должно быть еще в тройке, а без -0,01 оно попало бы в двойку). Можно написать, допустим, 0,00001
1) H13-0,01 - это то, что ищем. Если бы условие было, например, не <=23,3, а <23,3, то написали бы просто H13 2) если G13 >85, то ищем в массиве {-0,01;0;22,2;23,1;24}, если <=85, то в {-0,01;0;23,3;25;26} 3) {"не прибыл";5;4;3;2} - это массив того, что нужно, чтобы вывелось в ячейке
Что такое {-0,01;0;22,2;23,1;24}? У нас есть 5 возможных вариантов оценок - 2,3,4,5,"не прибыл". Каждому из них ставим в соответствие МИНИМАЛЬНОЕ время, при котором эта оценка может быть поставлена (с учетом того, что в искомом значении у нас стоит еще -0,01). ПРОСМОТР работает так: находит из массива для просмотра 2) максимальное число, меньшее или равное искомого значения 1), запоминает его порядковый номер и выводит из массива для вывода 3) значение с этим порядковым номером. А 0,01 - это смещение на 1 секунду назад. Для того, чтобы точно попадающие значения были бы в нужной категории (например, 26 у нас по условию должно быть еще в тройке, а без -0,01 оно попало бы в двойку). Можно написать, допустим, 0,00001_Boroda_
=ПРОСМОТР(H13-0,01;ЕСЛИ(G13<=85;{-0,01;0,01;22,2;23,1;24};{-0,01;0,01;23,3;25;26});{"не прибыл";5;4;3;2}) все чудно работает, только вот добавил равно!
=ПРОСМОТР(H13-0,01;ЕСЛИ(G13<=85;{-0,01;0,01;22,2;23,1;24};{-0,01;0,01;23,3;25;26});{"не прибыл";5;4;3;2}) все чудно работает, только вот добавил равно!hardl
Посмотри, что то с килограммами разобраться не могу, принцип тот же, но ставлю ноль, он мне ставит 2, должен ставить "не прибыл" =ПРОСМОТР(RC[-1];ЕСЛИ(RC[-8]<=85;{-0,01;0;140;160;180};{-0,01;0;150;170;190});{"не прибыл";2;3;4;5}), где ошибка?
Посмотри, что то с килограммами разобраться не могу, принцип тот же, но ставлю ноль, он мне ставит 2, должен ставить "не прибыл" =ПРОСМОТР(RC[-1];ЕСЛИ(RC[-8]<=85;{-0,01;0;140;160;180};{-0,01;0;150;170;190});{"не прибыл";2;3;4;5}), где ошибка?hardl
поиск по индексу(порядковый номер массива) 1.Если B7 ячейке от нижнего порога (0) до верхнего порога (1), тогда результат равен будет 0 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 2.Если B7 ячейке от нижнего порога (1) до верхнего порога (2), тогда результат равен будет 10 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 3.Если B7 ячейке от нижнего порога (2) до верхнего порога (3), тогда результат равен будет 20 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 4.Если B7 ячейке от нижнего порога (3) до … верхнего порога (то есть максимальное число 9E+307), тогда результат равен будет 30(=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) выше приведенную формулу можно еще таким написать:
поиск по индексу(порядковый номер массива) 1.Если B7 ячейке от нижнего порога (0) до верхнего порога (1), тогда результат равен будет 0 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 2.Если B7 ячейке от нижнего порога (1) до верхнего порога (2), тогда результат равен будет 10 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 3.Если B7 ячейке от нижнего порога (2) до верхнего порога (3), тогда результат равен будет 20 (=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) 4.Если B7 ячейке от нижнего порога (3) до … верхнего порога (то есть максимальное число 9E+307), тогда результат равен будет 30(=ПРОСМОТР(B7;{0;1;2;3};{0;10;20;30})) выше приведенную формулу можно еще таким написать: