Сумма нескольких столбцов текста в Excel - PullRequest
0 голосов
/ 28 февраля 2019

Это первый раз, когда я пишу команду в Excel, поэтому я не знаю, что именно я делаю.

Как видно из изображения, которое я пытаюсь получить в столбце "Все магазины"все магазины, в которых есть «Х».

В данный момент команда, которую я использую, отображает вывод первой ячейки, где она находит «X».

Я просмотрел несколько примеров, которые нашел по этой теме.Но я не нашел ничего конкретного.Я пытался сделать это с "SUMIF", а также я пытался использовать "&" в и после "B2", "C2", "D2", но все, что я получил, было ошибкой.

Все, что я нашел в этой теме, было как объединять числа.

В этом конкретном примере ожидаемый результат будет "Store1, Store3".

Спасибо за вашу поддержку!

Product Store Example

Ответы [ 4 ]

0 голосов
/ 01 марта 2019

Вы можете попробовать эту формулу массива:

=IFERROR(TEXTJOIN(",",TRUE,INDEX($A$1:$F$1,1,AGGREGATE(15,6,1/(B2:F2="X")*COLUMN(B2:F2),N(IF(1,ROW(INDIRECT("1:"&COUNTA(B2:F2)))))))),"")

Чтобы ввести / подтвердить формулу массива , удерживайте нажатой клавишу ctrl + shift при нажатии введите .Если вы сделаете это правильно, Excel поместит фигурные скобки {...} вокруг формулы, отображаемой в строке формул.

enter image description here

0 голосов
/ 28 февраля 2019

In E2 введите формулу массива :

=CHOOSE(COUNTA(B2:D2)+1,"",INDEX(B$1:D$1,MATCH("x",B2:D2,0)),TEXTJOIN(", ",TRUE,IF(B2:D2="x",B$1:D$1,"")),"All stores")

enter image description here

Массивформулы должны быть введены с помощью Ctrl + Shift + Введите , а не просто Enter .Если это сделано правильно, формула появится в фигурных скобках вокруг нее в строке формул.

Логика:

enter image description here

0 голосов
/ 28 февраля 2019

Прежде всего, я представляю, что у вас есть несколько столбцов, которые вы хотите рассмотреть.Таким образом, вы можете получить эту дату в новом рабочем листе, заменив «x» или выбранную метку, используя следующую формулу: =IF(A2<>"", A$1, "") просто заполните автоматически, чтобы получить все значения в новом рабочем листе.

Теперь сосредоточимся на новомРабочий лист.например, New Worksheet data

Применить приведенную ниже формулу, чтобы получить требуемый результат

=IF(COUNTA(H2:J2)-COUNTBLANK(H2:J2)=COLUMNS(H2:J2),"All Stories",TEXTJOIN(",",TRUE,H2:J2))

0 голосов
/ 28 февраля 2019

Вы можете использовать следующее:

=TEXTJOIN(", ",TRUE,IF(B2="x",B$1,""),IF(C2="x",C$1,""),IF(D2="x",D$1,""))

и заполнить другие продукты

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

...