VBA:在其他文本中搜索文本,返回相邻单元格。循环这个
我对VBA非常陌生,并且在很大程度上一直在向SO学习,记录宏,然后将一些代码连接在一起(成功有限) 在Excel中,我在一列中有一个字符串列表让我们调用B,我需要在a中搜索该字符串,这是另一列字符串,可能包含B中的字符串。因此,假设我们从B1开始,当它在a中找到B1所在的行时,它会返回找到的行中的字符串(从C列)(以及D和E列) 本质上,它是一个VLOOKUP(或者我更喜欢INDEXMATCH),但它搜索的不是lookup_值与lookup_范围中的单元格完全相等 在excel公式中,我可以做到: =如果(ISNUMBER)(搜索(A1,B1),B1,IF(ISNUMBER)(搜索(A1,B2),B2,IF(ISNUMBER)(搜索(A1,B3),B3,…) 但是把它放进一个单元格是不可能的,我知道用VBA做起来更容易;我只是在VBA方面做得不够好。 理想情况下,这将移动到B2并循环,直到找到B中的第一个空单元格 当前错误尝试:VBA:在其他文本中搜索文本,返回相邻单元格。循环这个,vba,excel,Vba,Excel,我对VBA非常陌生,并且在很大程度上一直在向SO学习,记录宏,然后将一些代码连接在一起(成功有限) 在Excel中,我在一列中有一个字符串列表让我们调用B,我需要在a中搜索该字符串,这是另一列字符串,可能包含B中的字符串。因此,假设我们从B1开始,当它在a中找到B1所在的行时,它会返回找到的行中的字符串(从C列)(以及D和E列) 本质上,它是一个VLOOKUP(或者我更喜欢INDEXMATCH),但它搜索的不是lookup_值与lookup_范围中的单元格完全相等 在excel公式中,我可以做到
Sub ATTEMPT()
Dim x As String
Dim found As Boolean
' Select first line of data.
Range("A2").Select
' Set search variable value.
x = Range("B929")
' Set Boolean variable "found" to false.
found = False
' Set Do loop to stop at empty cell.
Do Until IsEmpty(ActiveCell)
If InStr(Range("A2:A1000").Value, "BA025") > 0 Then
found = True
Exit Do
End If
' Step down 1 row from present location.
ActiveCell.Offset(1, 0).Select
Loop End Sub
我将非常感谢任何帮助。
谢谢。看一看-这可能会给你一些想法谢谢;我会试试看