Excel 测试字符串是否包含子字符串

Excel 测试字符串是否包含子字符串,excel,vba,Excel,Vba,在Sheet2的列“a”中有一个子字符串,我使用LEFT函数获取它。这在每次导入时都会发生变化,我试图在Sheet1的“AI”列中找到它。然后我想从Sheet1将列从“AI”复制到“AF”,并将它们粘贴到Sheet2中。我做错了什么 Sub InStrDemo() Dim lastrow As Long Dim i As Integer, icount As Integer Dim LResult As String LResult = Sheets("Sheet2").Range("A2"

在Sheet2的列“a”中有一个子字符串,我使用LEFT函数获取它。这在每次导入时都会发生变化,我试图在Sheet1的“AI”列中找到它。然后我想从Sheet1将列从“AI”复制到“AF”,并将它们粘贴到Sheet2中。我做错了什么

Sub InStrDemo()

Dim lastrow As Long
Dim i As Integer, icount As Integer
Dim LResult As String

LResult = Sheets("Sheet2").Range("A2")
LResult = Left(LResult, 4)
lastrow = Sheets("Sheet1").Range("A30000").End(xlUp).Row

icount = 1
For i = 2 To lastrow

If InStr(1, LCase(Range("AI" & i)), LCase(LResult)) <> 0 Then

    icount = icount + 1
    Sheets("Sheet2").Range("B" & icount & ":E" & icount) = 
    Sheets("Sheet1").Range("AF" & i & ":AI" & i).Value
End If

Next i

End Sub
Sub InStrDemo()
最后一排一样长
Dim i为整数,icount为整数
Dim LResult作为字符串
LResult=板材(“板材2”)。范围(“A2”)
LResult=左(LResult,4)
lastrow=板材(“板材1”).范围(“A30000”).结束(xlUp).行
i计数=1
对于i=2到最后一行
如果指令(1,LCase(范围(“AI”&i)),LCase(LResult))为0,则
icount=icount+1
图纸(“图纸2”)。范围(“B”&I数量和“:E”&I数量)=
图纸(“图纸1”).范围(“AF”&i&“:AI”&i).值
如果结束
接下来我
端接头

您正在尝试复制和粘贴,after=如果您尝试比较,则应该是。看看它是否有效:

Sheets("Sheet2").Range("B" & icount & ":E" & icount) = _
Sheets("Sheet1").Range("AF" & i & ":AI" & i).Value

您正在尝试复制和粘贴,如果您尝试比较,after=应该是uu。看看它是否有效:

Sheets("Sheet2").Range("B" & icount & ":E" & icount) = _
Sheets("Sheet1").Range("AF" & i & ":AI" & i).Value

哪一行显示错误?尝试使用F8调试。观察到一个问题,即当对列AI执行
instr
检查时,从列A检索的最后一行。如果列A为空,则会影响检查。否则代码看起来没问题。但是,在使用excel行等作为计数器时,始终声明变量。我没有错误。代码没有显示任何内容。哪一行显示错误?尝试使用F8调试。观察到一个问题,即当对列AI执行
instr
检查时,从列A检索的最后一行。如果列A为空,则会影响检查。否则代码看起来没问题。但是,在使用excel行等作为计数器时,始终声明变量。我没有错误。代码什么都没有。