Excel 处理从另一个用户窗体调用的组合框
我有一个Excel 处理从另一个用户窗体调用的组合框,excel,vba,userform,Excel,Vba,Userform,我有一个用户表单,其中包含一个组合框,我可以在其中搜索 If InStr(I1.Text, " ") > 0 Then New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " "))) New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (L
用户表单
,其中包含一个组合框
,我可以在其中搜索
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
如果我直接回忆起这个userform
,那么组合框可以正常工作
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
如果我从另一个userform
开始,然后按一个按钮以使用我的组合框打开userform
,则搜索将不起作用
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
我试过用“零钱”
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
这是第一个用户表单的适用部分:
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
这是《新约》的一部分
If InStr(I1.Text, " ") > 0 Then
New_Pat.First.Text = Left(I1.Text, Len(I1.Text) - 1 - (Len(I1.Text) - InStr(I1.Text, " ")))
New_Pat.Second.Text = Right(I1.Text, Len(I1.Text) - Len(Left(I1.Text, Len(I1.Text) - (Len(I1.Text) - InStr(I1.Text, " ")))))
New_Pat.Combobox10.SetFocus
Else
New_Pat.First.Text = I1.Text
New_Pat.Combobox10.SetFocus
End If
New_Pat.Show
Private Sub ComboBox10_Change() 'Keydown(ByVal keycode As MSforms.ReturnInteger, ByVal shift As Integer) 'Click() 'AfterUpdate() 'Change()
Sheets("ListOfName").Select
ComboBox1.Value = Cells(ComboBox10.ListIndex + 2, 91)
End Sub
这是第一个用户表单涉及的部分:如果InStr(I1.Text,“”)>0,那么New_Pat.first.Text=Left(I1.Text,Len(I1.Text)-1-(Len(I1.Text)-InStr(I1.Text,”))New_Pat.Second.Text=Right(I1.Text,Len(I1.Text),Len(I1.Text)-(Len(I1.Text)-InStr(I1.Text,“”)))New_Pat.Combobox10.SetFocus Else New_Pat.First.Text=I1.Text New_Pat.Combobox10.SetFocus End If New_Pat.show您的\u Change
代码是否实际运行?如前所述,如果我直接调用用户表单,组合框工作正常,而如果从第一个组合框开始则不工作