[英]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.