如何让我的代码只查看字符串的一部分

时间:2016-01-15 16:58:34

标签: vba excel-vba excel

我有一个工作表,其中包含c列中的部件号,然后是他们过去运行的行(A列)。我有一个看起来像这样的用户表单,

enter image description here

用户使用预设的组合框输入部件号,然后完成文本框中的最后3个数字,并选择他们想要搜索的行号。我编写了一个代码,它将在列A中搜索所选行,然后在C中搜索该部分。 问题是单元格中的部件号看起来像 02.N111.01 。 02在combobox1中,组合框2中的N和文本框中的111。如何告诉我的代码不要担心最后的.01。我只想要它来寻找 02.N111 部分。

代码:

Public iFirst As String 'From UserForm
Public iLetter As String 'From UserForm
Public iPart As String 'From UserForm
Public iLine As String 'From UserForm
Sub Start_UserForm()

UserForm.Show

End Sub

Sub FindPart()
Dim PartID As String

PartID = (iFirst & "." & iLetter & iPart)

i = 7

Do Until Cells(i, 1).Value > iLine

    If Cells(i, 1).Value = iLine Then
        If Cells(i, 3).Value = PartID Then
            MsgBox ("Cycle time for " & PartID & " on line " & iLine & " Found.")
            Cells(i, 1).Select
            Exit Sub
        Else

        End If
    Else
    End If
i = i + 1
Loop

MsgBox ("Cycle time for " & PartID & " on line " & iLine & " NOT found! New Cycle Time NEEDED!")

End Sub

1 个答案:

答案 0 :(得分:1)

替换:

If Cells(i, 3).Value = PartID Then

使用:

If Left(Cells(i, 3).Value, 7) = Left(PartID, 7) Then