Excel SUMIF, когда другая ячейка содержит текст

поэтому, например, у меня есть следующая таблица:

|    |     A      |    B     |
|    |------------|----------|
|  1 |Description |Amount    |
|  2 |------------|----------|
|  3 |Item1       |      5.00|
|  4 |Item2**     |     29.00|
|  5 |Item3       |      1.00|
|  6 |Item4**     |      5.00|
|  7 |------------|----------|
|  8 |Star Total  |     34.00|
|  9 |------------|----------|

Я хочу создать формулу в B8, которая вычисляет сумму сумм, если описание этой суммы содержит "* * " (или какой-либо другой обозначающий текст). В этом конкретном примере я хотел бы получить формулу, которая возвращает 34, так как только Item2 и Item4 содержат "**".

Я пытался использовать что-то вроде этого, но он работал только на основе значения в А3:

=SUMIF(A3:A6, ISNUMBER(SEARCH("**", A3)), B3:B6)

любые предложения быть оценен!

2 ответов


звездочка-это подстановочный знак, который можно использовать в Sumif (), поэтому вы можете изменить обозначающий текст на некоторые другие символы, например @@. Тогда эта формула будет работать:

=SUMIF(A2:A10,"*@@*",B2:B10)

enter image description here

Если вы хотите сохранить звездочки, формула становится немного более кудрявой.

=SUMIF(A2:A10,"*~*~**",B2:B10)

две средние звездочки экранируются символом Тильды.

enter image description here


вы можете избежать подстановочного знака и превратить его в литерал *, предварив его с Тильда (Тильды, ~) и поэтому оставьте свои данные без изменений:

=SUMIF(A2:A7,"*~*~*",B2:B7)  

ИМО стоит, потому что астриски относительно "элегантные".