Если у нас есть несколько столбцов с содержимым и мы хотим отобразить заголовки столбцов с содержимым в новом столбце, как нам это сделать?
2. Stackoverflow - Finding a specific value and returning column headers in Excel
EXAMPLE:
Indexing | Year 1 | Year 2 | Year 3 | Year 4 | Year 5 | Year 6 | Year 7 | Year 8 |
---|---|---|---|---|---|---|---|---|
? | - | 1 | - | - | - | - | - | - |
? | - | - | 2 | - | - | - | - | - |
? | - | - | - | 3 | - | - | - | 15 |
? | - | - | - | - | 4 | - | - | - |
Вначале мы использовали ИНДЕКС + Метод ПОИСКПОЗ, но не удался, всегда Н/Д https://superuser.com/questions/1300246/if-cell-contains-value-then-column-header Поэтому позже мы изменили ее на функцию TEXTJOIN, которая может отображать значения и заголовки значений, а также может одновременно отображать несколько столбцов со значениями.
Ожидаемые результаты:
Indexing | Year 1 | Year 2 | Year 3 | Year 4 | Year 5 | Year 6 | Year 7 | Year 8 |
---|---|---|---|---|---|---|---|---|
Year 2 | - | 6 | - | - | - | - | - | - |
Year 3 | - | - | 2 | - | - | - | - | - |
Year 4,Year 8 | - | - | - | 4 | - | - | - | 15 |
Year 5 | - | - | - | - | 5 | - | - | - |
=TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),$B$1:$I$1,""))
Если вы хотите отобразить значение, то:
=TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),B2:I2,""))
Среди них ISNUMBER(B2:I2) используется для определения того, является ли значение числом. Его можно изменить на ISBLANK(), чтобы определить, является ли оно пустым в зависимости от ситуации.
This is an array formula, so you need to enter it using Ctrl + Shift + Enter after entering formula instead of just Enter. It will add {} to your formula.