Здравствуйте. Прошу помощи решить вот такое вот задание.... Основной столбец "H", в котором в рандомном порядке записаны значения "G" и "R". Есть так же столбцы "D" и "F" в которых записаны такие же значенения "G" и "R" в рандомном порядке. Столбец K - результат следующих вычислений: Когда в столбце H, появляется значение "G", формула должна искать значение "R" в столбцах D и F начиная со следующей строки. Когда в столбце H, появляется значение "R", пропускаем диапазон, ищем следующее "G". Если по пути к "R" встречается "G" (в одной из колонок), тогда в колонке результата "K" должно быть значение "B". Если по пути к "R", в одной строке (В обеих колонках) будут "G" и "G", тогда в колонке "K" должно быть значение "B" Если по пути к "R" , в одной строке (В обеих колонках) будут "R" и "G" одновременно (или "G" и "R"), тогда в колонке "K" пустота. Если находим "R" (в одной из колонок), тогда в колонке "K" должно быть значение "A". Если находим "R" и "R" (в обеих колонках, тогда в колонке "K" должно быть значение "A".
Если найдено "R", переходим к следующему значению в колонке "H". (то есть не считаем значения после найденного "R", до следующего G в колонке "H") Как это реализовать формулой либо кодом ?
Спасибо!
Здравствуйте. Прошу помощи решить вот такое вот задание.... Основной столбец "H", в котором в рандомном порядке записаны значения "G" и "R". Есть так же столбцы "D" и "F" в которых записаны такие же значенения "G" и "R" в рандомном порядке. Столбец K - результат следующих вычислений: Когда в столбце H, появляется значение "G", формула должна искать значение "R" в столбцах D и F начиная со следующей строки. Когда в столбце H, появляется значение "R", пропускаем диапазон, ищем следующее "G". Если по пути к "R" встречается "G" (в одной из колонок), тогда в колонке результата "K" должно быть значение "B". Если по пути к "R", в одной строке (В обеих колонках) будут "G" и "G", тогда в колонке "K" должно быть значение "B" Если по пути к "R" , в одной строке (В обеих колонках) будут "R" и "G" одновременно (или "G" и "R"), тогда в колонке "K" пустота. Если находим "R" (в одной из колонок), тогда в колонке "K" должно быть значение "A". Если находим "R" и "R" (в обеих колонках, тогда в колонке "K" должно быть значение "A".
Если найдено "R", переходим к следующему значению в колонке "H". (то есть не считаем значения после найденного "R", до следующего G в колонке "H") Как это реализовать формулой либо кодом ?
Здравствуйте, Светлый! Спасибо за отклик! Вторая массивная формула работает немножко точнее нежели первая Но нужны коррективы По 19 строке: диапазон в котором нужно найти "R" или "R-R"(в обеих строках), начался в ячейке "H17", в нем значение "G". В 18 строке, мы уже нашли нужное нам "R-R"(и в K18 стоит "А"), по этому поиск должен "прекратится". Следующая строка(19-ая = "R"), не подходит под условие(пропускаем). Следующий диапазон поиска начинается в строке 21, потому что в предыдущей строке, в ячейке "H20", стоит "G" - подходит. Начинаем опять поиск "R", или "R-R" в обеих строках. По 24 строке: в H24, стоит R, то есть не подходит под наш критерий. Значит пропускаем диапазон, до следующего "G". То есть пропускаем строки 24-35. В 35 строке стоит "G", значит начинаем поиск в 36 строке. По 37 строке: диапазон поиска начался начиная от последнего "G" в ячейке H35. Начиная с 36 строки, начался поиск "R" или "R-R". В 36 строке стоит "G", значит отмечаем в колонке результата, что это "B". Ищем дальше в строке 37, и находим там "R", значит условие выполнилось, и должно стоять "A" (в К37). После этого ищем (следующий диапазон), начнется он в 54 строке, потому что в H53 = "G". Очень надеюсь что нормально объяснил Спасибо!
Здравствуйте, Светлый! Спасибо за отклик! Вторая массивная формула работает немножко точнее нежели первая Но нужны коррективы По 19 строке: диапазон в котором нужно найти "R" или "R-R"(в обеих строках), начался в ячейке "H17", в нем значение "G". В 18 строке, мы уже нашли нужное нам "R-R"(и в K18 стоит "А"), по этому поиск должен "прекратится". Следующая строка(19-ая = "R"), не подходит под условие(пропускаем). Следующий диапазон поиска начинается в строке 21, потому что в предыдущей строке, в ячейке "H20", стоит "G" - подходит. Начинаем опять поиск "R", или "R-R" в обеих строках. По 24 строке: в H24, стоит R, то есть не подходит под наш критерий. Значит пропускаем диапазон, до следующего "G". То есть пропускаем строки 24-35. В 35 строке стоит "G", значит начинаем поиск в 36 строке. По 37 строке: диапазон поиска начался начиная от последнего "G" в ячейке H35. Начиная с 36 строки, начался поиск "R" или "R-R". В 36 строке стоит "G", значит отмечаем в колонке результата, что это "B". Ищем дальше в строке 37, и находим там "R", значит условие выполнилось, и должно стоять "A" (в К37). После этого ищем (следующий диапазон), начнется он в 54 строке, потому что в H53 = "G". Очень надеюсь что нормально объяснил Спасибо!pain2430
=ЕСЛИ(ИЛИ(ИНДЕКС(K$1:K9;МАКС((H$9:H9="G")*СТРОКА($9:9))):K9="A";МАКС((H$9:H9="R")*СТРОКА($9:9))-МАКС((H$9:H9="G")*СТРОКА($9:9))>=0);"";СЖПРОБЕЛЫ(ПСТР(" A B";ПОИСК(D10&F10;" RRGGR");1)))
Тогда такой массивный вариант:
Код
=ЕСЛИ(ИЛИ(ИНДЕКС(K$1:K9;МАКС((H$9:H9="G")*СТРОКА($9:9))):K9="A";МАКС((H$9:H9="R")*СТРОКА($9:9))-МАКС((H$9:H9="G")*СТРОКА($9:9))>=0);"";СЖПРОБЕЛЫ(ПСТР(" A B";ПОИСК(D10&F10;" RRGGR");1)))
Тогда такой массивный вариант: [Перевод / Translate] =ЕСЛИ(ИЛИ(ИНДЕКС(K$1:K9;МАКС((H$9:H9="G")*СТРОКА($9:9))):K9="A";МАКС((H$9:H9="R")*СТРОКА($9:9))-МАКС((H$9:H9="G")*СТРОКА($9:9))>=0);"";СЖПРОБЕЛЫ(ПСТР(" A B";ПОИСК(D10&F10;" RRGGR");1)))
Спасибо, Светлый! Вы гений! Еще такой вопрос...а как теперь подсчитать кол-во A в диапазоне, и кол-во B? СЧЁТЕСЛИ не работает
Тогда такой массивный вариант: [Перевод / Translate] =ЕСЛИ(ИЛИ(ИНДЕКС(K$1:K9;МАКС((H$9:H9="G")*СТРОКА($9:9))):K9="A";МАКС((H$9:H9="R")*СТРОКА($9:9))-МАКС((H$9:H9="G")*СТРОКА($9:9))>=0);"";СЖПРОБЕЛЫ(ПСТР(" A B";ПОИСК(D10&F10;" RRGGR");1)))
Спасибо, Светлый! Вы гений! Еще такой вопрос...а как теперь подсчитать кол-во A в диапазоне, и кол-во B? СЧЁТЕСЛИ не работает pain2430