根据相应的单元格值从单元格中提取值

时间:2019-04-18 04:56:01

标签: excel vba excel-formula

我正在尝试根据下一列中给出的值从前几行中提取值。

如以下示例(说明表图像)中所示,在单元格A2中,单元格值为10(以绿色突出显示),在单元格D2中的相应值为3(以红色突出显示),因此,单元格E2,E3和E4中所需的值为分别删除文本“ SLR#”后,单元格A3,A4和A5的值分别为A-1111,B-2222,C-3333。对于单元格A6,单元格D6中的对应值为2,因此单元格E6和E7中的所需值为D-4444和E-5555。

像这样的连续数据和公式或VBA代码将满足我在E列中的要求。请让我知道是否需要进一步说明。预先感谢...

说明表:

enter image description here

我尝试了以下用户定义函数,但它为我提供了一个单元格而不是下一个单元格中的所有值。 (感谢Fluff先生使用此UDF)

Function UDF(Rng As Range, Rws As Long) As String
   Dim i As Long
   Dim Cl As Range

   For Each Cl In Rng
      If Left(Cl, 4) = "SLR#" Then
         UDf = UDF & Cl.Value
         i = i + 1
         If i = Rws Then Exit For
      End If
   Next Cl
   UDF = Trim(Replace(fiberboysa, "SLR#", ""))
End Function

1 个答案:

答案 0 :(得分:1)

我可以简化一下,但是如果数据是始终那样的结构,请尝试使用此公式...

=IF(D3<>"","",IF(ISBLANK(A3),"",A3))

...将其复制到单元格 E2 并填写。

enter image description here

如果它对您没有帮助,我很高兴,但是它可以解决您所举的简单示例。