I have two rows of data like this:
A B C D E
R1 0 -10 -10 -10 80
R2 0 -10 -20 -30 50
I want a formula to find the last -ive number in R1
and I want to return the value in R2
.
I know how to return the first +ive value like so:
=INDEX($A$1:$E$1,MATCH(TRUE, $A$1:$A$1>0,0))
How do I find the last -ive and return the R2
value?
Thanks!
asked Nov 27, 2017 at 22:50
TheRealPapaTheRealPapa
4,3238 gold badges69 silver badges150 bronze badges
You can use LOOKUP
for this, e.g.
=LOOKUP(2,1/(A1:E1<0),A2:E2)
Finds the last negative value in A1:E1
and returns corresponding value from A2:E2
answered Nov 27, 2017 at 23:03
barry houdinibarry houdini
45.5k8 gold badges63 silver badges80 bronze badges
1
Как найти первое / последнее положительное / отрицательное число в Excel?
На листе есть список чисел, которые имеют как положительные, так и отрицательные числа, если вы хотите найти первое или последнее положительное или отрицательное число в этом столбце, как вы могли бы это сделать?
Найдите первое положительное / отрицательное число с помощью формулы массива
Найдите последнее положительное / отрицательное число с помощью формулы массива
Найдите первое положительное / отрицательное число с помощью формулы массива
Чтобы получить первое положительное или отрицательное число в списке данных, вам может помочь следующая формула, сделайте следующее:
1. В пустой ячейке, помимо ваших данных, введите следующую формулу массива: =INDEX(A2:A18,MATCH(TRUE,A2:A18>0,0))(A2: A18 это список данных, который вы хотите использовать), см. снимок экрана:
2, Затем нажмите Shift + Ctrl + Enter вместе, чтобы вернуть первое положительное число в списке, см. снимок экрана:
Внимание: Чтобы получить первое отрицательное число в списке, вам просто понадобится эта формула: =INDEX(A2:A18,MATCH(TRUE,A2:A18<0,0)), и не забудьте нажать Shift + Ctrl + Enter ключи одновременно.
Найдите последнее положительное / отрицательное число с помощью формулы массива
Если вам нужно найти последнее положительное или отрицательное число в списке значений, вы также можете применить формулу массива.
1. Введите следующую формулу в пустую ячейку рядом с вашими данными, = ПРОСМОТР (9.99999999999999E + 307; ЕСЛИ ($ A $ 2: $ A $ 18> 0, $ A $ 2: $ A $ 18))( A2: A18 это список данных, который вы хотите использовать), см. снимок экрана:
2, Затем нажмите Shift + Ctrl + Enter ключи одновременно, чтобы вернуть последнее положительное число в списке, см. снимок экрана:
Внимание: Чтобы получить последнее отрицательное число в списке, вам просто нужна эта формула: = ПРОСМОТР (9.99999999999999E + 307; ЕСЛИ ($ A $ 2: $ A $ 18 <0, $ A $ 2: $ A $ 18)), и не забудьте нажать Shift + Ctrl + Enter ключи вместе.
Статьи по теме:
Как найти первое / последнее значение больше X в Excel?
Как найти максимальное значение в строке и заголовке столбца возврата в Excel?
Как найти максимальное значение и вернуть значение соседней ячейки в Excel?
Как найти максимальное или минимальное значение на основе критериев в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (1)
Оценок пока нет. Оцените первым!
На чтение 2 мин. Просмотров 311 Опубликовано 21.05.2021
На листе есть список чисел, которые имеют как положительные, так и отрицательные числа. Если вы хотите найти первое или последнее положительное или отрицательное число в этом столбце, как вы могли бы это сделать? ?
Найти первое положительное/отрицательное число с помощью формулы массива
Найти последнее положительное/отрицательное число с формулой массива
Найдите первый положительное/отрицательное число с формулой массива
Чтобы получить первое положительное или отрицательное число в списке данных, вам может помочь следующая формула. Сделайте следующее:
1 . В пустой ячейке, помимо ваших данных, введите следующую формулу массива: = INDEX (A2: A18, MATCH (TRUE, A2: A18> 0,0)) , ( A2: A18 – это список данных, который вы хотите использовать), см. снимок экрана:
2 . Затем нажмите одновременно клавиши Ctrl + Shift + Enter , чтобы вернуть первое положительное число в списке, см. Снимок экрана:
: чтобы получить первое отрицательное число в списке, вам просто понадобится следующая формула: = INDEX (A2: A18, MATCH (TRUE, A2: A18 и не забудьте одновременно нажать клавиши Ctrl + Shift + Enter .
Найдите последнее положительное/отрицательное число с помощью формулы массива
Если вам нужно найти последнее положительное или отрицательное число в списке значений, вы также можете применить формулу массива.
1 . Введите следующую формулу в пустую ячейку рядом с вашими данными: = LOOKUP (9.99999999999999E + 307, IF ($ A $ 2: $ A $ 18> 0, $ A $ 2: $ A $ 18)) ( – это список данных, который вы хотите использовать), см. снимок экрана:
2 . Затем нажмите одновременно клавиши Ctrl + Shift + Enter , чтобы вернуть последнее положительное число в списке, см. Снимок экрана:
: чтобы получить последнее отрицательное число в списке, вам просто понадобится следующая формула: = ПРОСМОТР (9.99999999999999E + 307, IF ($ A $ 2: $ A $ 18 и не забудьте нажать Ctrl + Shift + Enter вместе.
Как найти первое/последнее значение больше X в Excel?
Как найти наивысшее значение в строке и заголовок возвращаемого столбца в Excel?
Как найти максимальное значение и вернуть значение соседней ячейки в Excel?
Как найти максимальное или минимальное значение на основе критериев в Excel?
Сообщение от EzCoding
Ну если убрать N- будет норм.
да и при N будет нормально, ошибки не будет, просто на экран выведется мусор, переменная то не инициализирована
Сообщение от EzCoding
Не понимаю зачем вы делаете проверку i>-1 если можно проверять i>=0;
этот код выполнит одно и тоже но при записи i>=0 возможен вариант что будут две проверки на больше и на равно
неизвестно как компилятор откомпилирует, оптимизирует или нет, на каком камне это будет исполнятся
а так я просто показал еще один путь решения
не люблю мыслить шаблонно
Сообщение от EzCoding
А если выводить вне цикла – лучше иметь счетчик отдельно и отдельно переменную вывода, счетчик может понадобится еще для каких то подзадач.
так если он не нужен снаружи объявляй его в цикле
да и счетчик это не приговор
можешь в одном цикле объявить i а в другом ii
почитай Криса Касперски “Техника отладки программ без исходных кодов” “Основы хакерства” и другие книги
и поймешь что получается в исполняемом коде, хороший оптимизатор может так перелопатить твою программу, что её никто не узнает
Сообщение от Andrey027
Помогите найти ошибку.
одну
Сообщение от Andrey027
Microsoft visual C++ 6.0
Сообщение от Andrey027
double a[5],
Сообщение от Andrey027
cout<<“Vvedite razmer massiva”;
зачем? он итак известен 5
а что будет, если я введу100
Сообщение от Andrey027
cout<<“nVvedite massiv:n”;
cin>>a[n];
выход за пределы массива
и где ввод всех элементов массива?
Сообщение от Andrey027
for(i=0;i<n;i++)
{
cout<<“nMassiva:n”<<a[i];
p*=a[i];
k++;
}
и где проверка на отрицательный элемент?
k будет равно n
Проблемы возникшие с решением:
- Как остановить данный цикл, при вводе последнего числа последовательности?
- Выводится первый отрицательный элемент, а нужен последний.
Подскажите, пожалуйста, как исправить код.
#include <iostream>
int main() {
int n = 1, x = 0;
std::cout << "Enter the sequence: ";
while (std::cin >> x) {
std::cin >> x;
if (x >= 0)
n++;
}
std::cout << n;
}
задан 1 дек 2021 в 18:08
2
#include <iostream>
using namespace std;
int main() {
int no = 0, nno = 0, x;
while (cin >> x) {
no++;
if (x < 0) nno = no;
}
cout << nno;
}
Просто считаете все числа, и если отрицательное – перезаписываете его номер.
Прекратить цикл можно или введя Ctrl-Z (в Windows), или введя не число.
ответ дан 2 дек 2021 в 7:07
MikhailoMikhailo
12.3k2 золотых знака17 серебряных знаков41 бронзовый знак