我有一个工作表,其中包含c列中的部件号,然后是他们过去运行的行(A列)。我有一个看起来像这样的用户表单,
用户使用预设的组合框输入部件号,然后完成文本框中的最后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
答案 0 :(得分:1)
替换:
If Cells(i, 3).Value = PartID Then
使用:
If Left(Cells(i, 3).Value, 7) = Left(PartID, 7) Then