簡體   English   中英

Excel:在多個列中查找值並返回標題列

[英]Excel: Find value across multiple columns and return header column

我試圖找到一種方法來跨多個列查找“未知”值。 當它存在時,我想將值出現的所有標題列返回到B列中每一行的一個單元格中。

例如,對於第2行(標題行下方的第一行),我希望它僅將第2行的“ Unknown”出現在F列的所有列名返回Y列,並將該列名放在B2中。 我要對所有9064行重復該過程。

我使用的是Excel2010。我查找了匹配索引,但找不到找到自己想做的方法的方法。 有沒有一種方法可以跨多個列查找值,然后返回該行中出現值的每個列標題,並將所有列標題放入一個單元格中?

資料檢視

這是一個自定義函數。 首先將以下代碼放入常規模塊中(Alt + F11 >>插入>>模塊>>復制/粘貼>> Alt + Q)...

Function AConcat(a As Variant, Optional Sep As String = "") As String
' Harlan Grove, Mar 2002

    Dim Y As Variant

    If TypeOf a Is Range Then
        For Each Y In a.Cells
            AConcat = AConcat & Y.Value & Sep
        Next Y
    ElseIf IsArray(a) Then
        For Each Y In a
            AConcat = AConcat & Y & Sep
        Next Y
    Else
        AConcat = AConcat & a & Sep
    End If

    AConcat = Left(AConcat, Len(AConcat) - Len(Sep))

End Function

然后在AA2中輸入以下公式,使用CONTROL + SHIFT + ENTER進行確認,然后向下復制:

=SUBSTITUTE(AConcat(IF(LEFT(F2:Y2,3)="Unk",", "&$F$1:$Y$1,"")),", ","",1)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM