excel 我试图搜索A列的文本中的引号,我应该得到上面的细胞时,找到并将其放置在C列

tag5nh1u  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(93)

我想在A列搜索引号中的文本,我应该得到上面的单元格,并将其放在C列。

Sub ALobP3b_LPALLETName()
'
' ALobP3_LPALLETName Macro
'
    ActiveCell.FormulaR1C1 = _
    "=IF(R[1]C[-2]=""STD LTR 3D BC"",RC[-2],IF(R[1]C[-2]=""STD LTR SCF BC"",RC[-2],IF(R[1]C[-2]=""STD LTR NDC BC"",RC[-2],IF(R[1]C[-2]=""STD LTR BC WKG"",RC[-2],IF(R[1]C[-2]=""STD LTR BC/MACH WKG"",RC[-2])))))"
    ' Range("B2").FormulaR1C1 = "=R[-1]C[1]"         'refs A1, one row up (-1) and one column left (-1)              ]
    Range("C1").Select
    Selection.AutoFill destination:=Range("C1:C1000"), Type:=xlFillDefault
    Range("C1:C1000").Select

End Sub

我在C列中得到False。下面的公式显示在false

=IF(A17="STD LTR 3D BC",A16,IF(A17="STD LTR SCF BC",A16,IF(A17="STD LTR NDC BC",A16,IF(A17="STD LTR BC WKG",A16,IF(A17="STD LTR BC/MACH WKG",A16)))))

BROOKLYN NY 112(a16)STD LTR 3D BC(A17)

xcitsw88

xcitsw881#

下面的函数将返回第一个单元格顶部的值单元格,其中包含指定范围内的所需文本。
要使用它,你只需要复制下面的代码,就像它是一个宏一样,保存文档,然后使用公式。
例如,您可以使用:用途:=search_above(“STD LTR 3D BC”,A1:A10).在这个例子中,如果单元格A3等于“STD LTR 3D BC”,它将返回单元格A2的值。

Function search_above(text As String, rng_to_search As Range)

 For Each Cell In rng_to_search
     If Cell.Value = text Then
         search_above = Cells(Cell.Row - 1, Cell.Column).Value
        
     End If
    
 Next Cell

End Function

相关问题