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

Вход

Регистрация

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

 

= Мир MS Excel/Определение номера строки в диапазоне удовлетворяющее услови - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Определение номера строки в диапазоне удовлетворяющее услови (Формулы/Formulas)
Определение номера строки в диапазоне удовлетворяющее услови
Xenus91 Дата: Воскресенье, 22.05.2016, 19:28 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 137
Репутация: 13 ±
Замечаний: 0% ±

Excel 2016
Всем доброго вечера, просьба помочь с решением проблемы,
Необходимо определить ячейку в диапазоне В2:В12 подходящую условию >8 и вывести номер ее строки
К сообщению приложен файл: 0484039.xlsx (8.9 Kb)
 
Ответить
СообщениеВсем доброго вечера, просьба помочь с решением проблемы,
Необходимо определить ячейку в диапазоне В2:В12 подходящую условию >8 и вывести номер ее строки

Автор - Xenus91
Дата добавления - 22.05.2016 в 19:28
_Boroda_ Дата: Воскресенье, 22.05.2016, 19:53 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Номер строки или номер по порядку? Для номера по порядку первой ячейки, большей 8, так можно
Код
=ПОИСКПОЗ(9;B2:B12)+1

Для последней так
Код
=ПРОСМОТР(;-1/(B2:B12>8);A2:A12)
К сообщению приложен файл: 0484039_1.xlsx (9.5 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНомер строки или номер по порядку? Для номера по порядку первой ячейки, большей 8, так можно
Код
=ПОИСКПОЗ(9;B2:B12)+1

Для последней так
Код
=ПРОСМОТР(;-1/(B2:B12>8);A2:A12)

Автор - _Boroda_
Дата добавления - 22.05.2016 в 19:53
Karataev Дата: Воскресенье, 22.05.2016, 19:57 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
Решение с помощью формулы массива (вводится Ctrl+Shift+Enter):
Код
=НАИМЕНЬШИЙ(ЕСЛИ(B2:B12>8;СТРОКА(B2:B12);"");СТРОКА()-1)

Формула массива находится в диапазоне D2:D12.
P.S. Формулу массива вставил так: выделил диапазон D2:D12 и вставил одну формулу. Чтобы удалить формулы, нужно сначала выделить диапазон D2:D12.
К сообщению приложен файл: formulas.xlsx (8.6 Kb)
 
Ответить
СообщениеРешение с помощью формулы массива (вводится Ctrl+Shift+Enter):
Код
=НАИМЕНЬШИЙ(ЕСЛИ(B2:B12>8;СТРОКА(B2:B12);"");СТРОКА()-1)

Формула массива находится в диапазоне D2:D12.
P.S. Формулу массива вставил так: выделил диапазон D2:D12 и вставил одну формулу. Чтобы удалить формулы, нужно сначала выделить диапазон D2:D12.

Автор - Karataev
Дата добавления - 22.05.2016 в 19:57
Xenus91 Дата: Воскресенье, 22.05.2016, 20:47 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 137
Репутация: 13 ±
Замечаний: 0% ±

Excel 2016
_Boroda_, именно для номера строки, мне нужен только номер, чтобы в дальнейшем подтянуть по этому номеру значение из другого столбца,
но ваша формула работает только если значения в диапазоне не меняются? если да то это немного не то,чего хотелось бы. значения в диапазоне поиска меняются соответственно и номер строки тоже
 
Ответить
Сообщение_Boroda_, именно для номера строки, мне нужен только номер, чтобы в дальнейшем подтянуть по этому номеру значение из другого столбца,
но ваша формула работает только если значения в диапазоне не меняются? если да то это немного не то,чего хотелось бы. значения в диапазоне поиска меняются соответственно и номер строки тоже

Автор - Xenus91
Дата добавления - 22.05.2016 в 20:47
_Boroda_ Дата: Воскресенье, 22.05.2016, 21:23 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
именно для номера строки

Тогда так (начинаем с 1 и вместо 12 можно написать 999 или что угодно, но без фанатизма)
Код
=ПОИСКПОЗ(9;B1:B12)+1

формула работает только если значения в диапазоне не меняются?
Почему Вы так решили? У вас автопересчет включен? Проверьте.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
именно для номера строки

Тогда так (начинаем с 1 и вместо 12 можно написать 999 или что угодно, но без фанатизма)
Код
=ПОИСКПОЗ(9;B1:B12)+1

формула работает только если значения в диапазоне не меняются?
Почему Вы так решили? У вас автопересчет включен? Проверьте.

Автор - _Boroda_
Дата добавления - 22.05.2016 в 21:23
gling Дата: Воскресенье, 22.05.2016, 21:23 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2519
Репутация: 674 ±
Замечаний: 0% ±

2010
Для номера по порядку первой ячейки, большей 8,
единица не нужна. Можно так
Код
=ПОИСКПОЗ(9;B2:B12)
Чем не подходит формула Александра (_Boroda_)?
поиска меняются соответственно и номер строки тоже
А Вы пробовали менять? Покажите что не так.


ЯД-41001506838083

Сообщение отредактировал gling - Воскресенье, 22.05.2016, 21:25
 
Ответить
Сообщение
Для номера по порядку первой ячейки, большей 8,
единица не нужна. Можно так
Код
=ПОИСКПОЗ(9;B2:B12)
Чем не подходит формула Александра (_Boroda_)?
поиска меняются соответственно и номер строки тоже
А Вы пробовали менять? Покажите что не так.

Автор - gling
Дата добавления - 22.05.2016 в 21:23
_Boroda_ Дата: Воскресенье, 22.05.2016, 21:35 | Сообщение № 7
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Для номера по порядку первой ячейки, большей 8,
единица не нужна. Можно так
=ПОИСКПОЗ(9;B2:B12)
Разве? Почему? Я, возможно, что-то не понял? Формула дает 3, а нам нужно 4 или 5 (номер по порядку или номер строки)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Для номера по порядку первой ячейки, большей 8,
единица не нужна. Можно так
=ПОИСКПОЗ(9;B2:B12)
Разве? Почему? Я, возможно, что-то не понял? Формула дает 3, а нам нужно 4 или 5 (номер по порядку или номер строки)

Автор - _Boroda_
Дата добавления - 22.05.2016 в 21:35
Xenus91 Дата: Воскресенье, 22.05.2016, 22:07 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 137
Репутация: 13 ±
Замечаний: 0% ±

Excel 2016
gling, пробовал менять
смотрите вложение
К сообщению приложен файл: 0484039_1-1-.xlsx (9.5 Kb)
 
Ответить
Сообщениеgling, пробовал менять
смотрите вложение

Автор - Xenus91
Дата добавления - 22.05.2016 в 22:07
Xenus91 Дата: Воскресенье, 22.05.2016, 22:15 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 137
Репутация: 13 ±
Замечаний: 0% ±

Excel 2016
Решение с помощью формулы массива (вводится Ctrl+Shift+Enter):

=SMALL(IF(B2:B12>8,ROW(B2:B12),""),ROW()-1)

Это решение идеально подходит, всем спасибо за помощь
 
Ответить
Сообщение
Решение с помощью формулы массива (вводится Ctrl+Shift+Enter):

=SMALL(IF(B2:B12>8,ROW(B2:B12),""),ROW()-1)

Это решение идеально подходит, всем спасибо за помощь

Автор - Xenus91
Дата добавления - 22.05.2016 в 22:15
gling Дата: Воскресенье, 22.05.2016, 22:59 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2519
Репутация: 674 ±
Замечаний: 0% ±

2010
Согласен. Не учел, что для неточного поискпозиции, данные должны быть отсортированы. Попробуйте еще такую формулу
Код
=СУММПРОИЗВ(ПОИСКПОЗ(1;--(B2:B12>8);))
Разве? Почему?
Здравствуйте Александр! Это по тому что формула работает не правильно, при попытке смены данных у меня получился другой результат, по этому так и написал.


ЯД-41001506838083

Сообщение отредактировал gling - Воскресенье, 22.05.2016, 23:22
 
Ответить
СообщениеСогласен. Не учел, что для неточного поискпозиции, данные должны быть отсортированы. Попробуйте еще такую формулу
Код
=СУММПРОИЗВ(ПОИСКПОЗ(1;--(B2:B12>8);))
Разве? Почему?
Здравствуйте Александр! Это по тому что формула работает не правильно, при попытке смены данных у меня получился другой результат, по этому так и написал.

Автор - gling
Дата добавления - 22.05.2016 в 22:59
_Boroda_ Дата: Воскресенье, 22.05.2016, 23:41 | Сообщение № 11
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Владимир, здравствуйте!
Ну да, с неточным ищет первое >=, после которого значение, меньшее этого найденного. Иногда это полезно даже в неотсортированном массиве, но не в этом случае.
Тогда еще несколько формул (все формулы массива)
Как у Владимира
Код
=ПОИСКПОЗ(1=1;B2:B12>8;)

тупо минимум если
Код
=МИН(ЕСЛИ(B2:B12>8;A2:A12))

и извращение с моим любимым ТЕКСТом
Код
=МИН(--ТЕКСТ(B2:B12;"[>8]"&A2:A12&";99"))
К сообщению приложен файл: 0484039_1-1-1.xlsx (9.6 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВладимир, здравствуйте!
Ну да, с неточным ищет первое >=, после которого значение, меньшее этого найденного. Иногда это полезно даже в неотсортированном массиве, но не в этом случае.
Тогда еще несколько формул (все формулы массива)
Как у Владимира
Код
=ПОИСКПОЗ(1=1;B2:B12>8;)

тупо минимум если
Код
=МИН(ЕСЛИ(B2:B12>8;A2:A12))

и извращение с моим любимым ТЕКСТом
Код
=МИН(--ТЕКСТ(B2:B12;"[>8]"&A2:A12&";99"))

Автор - _Boroda_
Дата добавления - 22.05.2016 в 23:41
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Определение номера строки в диапазоне удовлетворяющее услови (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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