Excel:如果该行中有值,则将列标题作为文本提取,MULTIPLE列

时间:2015-05-28 19:34:05

标签: excel

我正在开发网站时使用电子表格来管理内容。关键字标签(子类别ID)有列,如果该标签适用于该资产,则使用X检查资产行。这从Z列延伸到GT列。

我想找到一种方法,在一个单元格中列出应用于资产的所有标签。

我上周在这个网站上发现了一篇很棒的帖子,关于连续第一个值的列标题,这对我上周正在做的任务有用 - 现在我想知道如何为该范围内的每个值拉入列标题。

这是我为之前的努力复制的公式:

= IF(COUNTA($ Z2:$ GT2)= 0,"",INDEX($ Z $ 1:$ GT $ 1,MATCH(TRUE,INDEX($ Z2:$ GT2<> "",0),0)))

感谢您的任何提示!

1 个答案:

答案 0 :(得分:0)

建立一个相当简单的公式:

Function ConcXs(rngRow As Range)
Dim strResult As String
strResult = ""
For Each rngFor In rngRow
    If rngFor.Value = "X" Then strResult = strResult + (Cells(1, rngFor.Column).Value)
Next
ConcXs = strResult
End Function

然后你可以在excel中使用这个公式,放在范围内(例如Z3:GT3),它会找到该范围内的任何X,并连接每个的标题(假设在第1行)。如果结果中需要逗号,空格等,则可以修改。