Excel formula 以第1行为结果在多列中进行索引搜索

Excel formula 以第1行为结果在多列中进行索引搜索,excel-formula,Excel Formula,我试图修改下面的公式。我确信如何修改它是很困难的,但现在我需要新的方法。我花了很多时间和它在一起 {=INDEX(WholeTable,MATCH(1,MMULT(--(ColumntSearch=[@Barcode]),TRANSPOSE(COLUMN(ColumntSearch)^0)),0),1)} 它是如何工作的。 我有扫描条形码的列表,第二个有这些条形码的信息。 遗憾的是,很少有条形码属于同一行,并且记录在29个条形码列中的一个列中 上面的公式是在不同的列(其中29列,ColumnSe

我试图修改下面的公式。我确信如何修改它是很困难的,但现在我需要新的方法。我花了很多时间和它在一起

{=INDEX(WholeTable,MATCH(1,MMULT(--(ColumntSearch=[@Barcode]),TRANSPOSE(COLUMN(ColumntSearch)^0)),0),1)}

它是如何工作的。 我有扫描条形码的列表,第二个有这些条形码的信息。 遗憾的是,很少有条形码属于同一行,并且记录在29个条形码列中的一个列中

上面的公式是在不同的列(其中29列,
ColumnSearch
)中搜索条形码,并在搜索到的行中给出一个特定的列作为搜索结果。在这个例子中,它是第一个

示例:Rw04235位于K列;第2345行。我从第2345行的第一列获得结果值。例如ID2432 ……

我需要对其进行修改,以便在中找到29个中的哪一列是我的条形码,并仅给出该列第一个单元格的结果

=COLUMN(INDEX(WholeTable,SUMPRODUCT(ROW(ColumntSearch)*(WholeTable=[@Barcode])),SUMPRODUCT(COLUMN('Source for S. Scanning'!$A$4:$AH$4)*(WholeTable=[@Barcode]))))
它将返回包含该条形码的列,因此我可以使用该列编号获取第一行值,谢谢

编辑(来自OverflowStacker)

给出匹配的行号

=INDEX(WholeTable,SUMPRODUCT(ROW(ColumntSearch)*(WholeTable=[@Barcode])),1)
应足以获得所需的值。根据需要调整
1

查看
=INDEX(WholeTable,SUMPRODUCT(ROW(ColumntSearch)*(WholeTable=[@Barcode])),1)