Среднее число, если другой столбец содержит текст подстроки в Excel

Я ищу способ усреднить числовые числа в одном столбце, скажем, B, только если строка в столбце A содержит определенный текст.

например:

(In column A) (In column B)
Hello table . . . 1
Hello desk  . . . 2 
Bye table   . . . 3
Bye desk  . . . . 4

Так что, если критерии для усреднения чисел "стол", ответ будет (2+4)/2=3.

что я придумал до сих пор:

=AVERAGEIF(A1:A5, SEARCH("desk",B1:B5),B1:B5) 

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

какие предложения?

24
задан fixer1234
14.04.2023 21:38 Количество просмотров материала 3608
Распечатать страницу

4 ответа

добавить звездочку * подстановочный знак перед и / или после слова "стол", как:

=AVERAGEIF(A1:A5,"*desk",B1:B5)

или

=AVERAGEIF(A1:A5,"*desk*",B1:B5)

Это говорит Excel игнорировать любые символы до / после слова "стол".

10
отвечен BillDOe 2023-04-16 05:26

Ну, как несколько общий ответ, который будет работать для вас, еще один способ сделать условие в функции (в вашем случае, если внутри среднего), вы всегда можете разбить его на части. Оператор IF также может возвращать массив и не обязательно должен быть одним значением.

Если ты типа

=AVERAGE(IF(ISERROR(SEARCH("desk",A1:A5))=FALSE,A1:A5))

и нажать Ctrl + Shift + введите после того, как вы введете его, то он будет лечить входного массива, а не значение, дающие ваши результаты.

надеюсь, что это помогает!

3
отвечен Eric F 2023-04-16 07:43

AVERAGEIF является лучшим ответом для Excel 2013+. Для более старых версий необходимо использовать третий столбец, C.

все ячейки в столбце C (со значением слева) эту формулу: =IF(ISNUMBER(SEARCH(C,A1)), B1, "")

клетка, C7 просто имеет слово desk введено так, чтобы эти формулы не нужно было исправлять каждый раз при изменении поиска.

после этого, вы просто сделать в среднем, что в C5,=AVERAGE(C1:C4). Это все, что вам нужно. Не много расточительствованный космос действительно и вы можете избавиться от окна поиска тоже, если вы хотите просто настроить функции, когда это необходимо.

1
отвечен krowe2 2023-04-16 10:00

Я не уверен, что использование столбца C возможно для вас, но вот один вариант, который я тестировал.

в ячейку C1 введите следующую формулу: =IF(ISNUMBER(SEARCH("desk", A1)), B1,"")

копировать/вставить эту формулу для каждой строки в столбце c

средние суммы, указанные в столбце C.

Если столбец C уже используется, просто вставьте другой столбец на его место

0
отвечен Jamiho 2023-04-16 12:17

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх