在单元格范围内查找值并返回一定距离的值

我从我的网站上复制了一系列具有“产品代码”字段的页面(原始源文档已被放错位置)。 我现在有在Excel中的页面数据,并需要使用公式来find标题“产品代码”,然后返回该标题下的值。 尽pipe页面之间的标题是一致的,但每个页面在页面上的位置都有一些不同。

我需要制定出最好的公式,以便无论“产品代码”在哪个单元格中,Excel都可以find它,然后给出它下面的单元格的值。

这看起来很简单,但我无法得到它,它正在我的脑海里。我看了别处,似乎无法修改其他人使用VLOOKUP,HLOOKUP,MATCH和INDEX公式的例子。

有谁知道这将是可能的?

到目前为止,最简单和最灵活的方法是使用VBA函数(您可以简单地使用它作为一个正常的工作表函数)。 这里是VBA

Public Function Find_Pcode(ByRef to_search As Range, Findthat As String) As Variant Find_Pcode = to_search.Find(what:=Findthat, MatchCase:=False).Offset(1, 0).Value End Function 

如果你真的想要/不得不使用内置的工作表函数,那么如果你不知道你的标签“产品代码”将会包含哪些行或列,

例如,如果你知道ROW,那么可以这样做:

=OFFSET(G5,1,MATCH("Product Code",G5:O5,0)-1)

其中G5是行G5:O5的第一个单元格G5:O5您知道的G5:O5包含其中包含“产品代码”的单元格。 正如我所提到的,这只有在你知道哪一行时才有效。

另外,如果你知道它总是在列A中,那么你也可以使用这个工作表函数

=OFFSET(A1,MATCH("Product Code",A1:A25,0),0)

其中A1:A25是您要search包含“产品代码”的单元格的位置。

下面的图片详细说明如何使用这些function(可能需要放大)!

使用VBA。 打开VBA窗口 – >在工作表中插入“模块”(通过左窗格并右键单击工作表名称) – >将VBA粘贴到模块中 – >使用VBA,如图2所示。

VBA更灵活,您可以给它一个方形/任意大小的范围来search。

如何使用匹配

如何使用VBA功能