Excel 在另一个If-Not场景之后运行If-Not

Excel 在另一个If-Not场景之后运行If-Not,excel,vba,Excel,Vba,在我的脚本中,选择验证项目后,代码会选择下一个单元格并打开验证列表,我尝试完成的是在选择之后,在下一列中选择单元格,然后打开验证列表进行选择。我似乎不能允许一个脚本在另一个脚本之后运行。最上面的代码段是我尝试在第一个If-Not之后实现第二个If-Not。底部的片段是整个脚本 如果大小为“”,则 MsgBox“现在为您的”&vbNewLine&iteem、“服装选择”和“(项目“&TheId&”)选择尺码 Target.Offset(,2)。选择 Target.Offset(,2).Appli

在我的脚本中,选择验证项目后,代码会选择下一个单元格并打开验证列表,我尝试完成的是在选择之后,在下一列中选择单元格,然后打开验证列表进行选择。我似乎不能允许一个脚本在另一个脚本之后运行。最上面的代码段是我尝试在第一个If-Not之后实现第二个If-Not。底部的片段是整个脚本

如果大小为“”,则
MsgBox“现在为您的”&vbNewLine&iteem、“服装选择”和“(项目“&TheId&”)选择尺码
Target.Offset(,2)。选择
Target.Offset(,2).Application.SendKeys“%{UP}”
如果结束
如果颜色为“”,则
MsgBox“现在为您的”&vbNewLine&iteem、“服装选择”和“(项目“&TheId&”)选择颜色
Target.Offset(,3)。选择
Target.Offset(,3).Application.SendKeys“%{UP}”
如果
Private子工作表\u更改(ByVal目标作为范围)
出错时继续下一步
如果不相交(目标,范围(“A3”)为零,则
范围(“B3:B3”)。ClearContents
范围(“C3:C6”).ClearContents
范围(“D3:D6”)。清晰内容
范围(“E3:E6”)。ClearContents
范围(“F3:F6”)。ClearContents
如果结束
如果Target.Count=1,则
如果单元格(Target.Row、Target.Column+1).Value=”“,则
item=目标值
大小=目标.偏移量(,2).值
颜色=目标。偏移量(,3)。值
TheId=目标偏移量(,4).值
如果不相交(目标,范围(“C3:C6”))则为零
ItemVal=InputBox(“您想要多少个”&(Item)&“,“服装选择”&“(Item#“&TheId&”))
单元格(Target.Row,Target.Column+1).Value=ItemVal
如果大小为“”,则
MsgBox“现在为您的”&vbNewLine&iteem、“服装选择”和“(项目“&TheId&”)选择尺码
Target.Offset(,2)。选择
Target.Offset(,2).Application.SendKeys“%{UP}”
如果结束
如果颜色为“”,则
MsgBox“现在为您的”&vbNewLine&iteem、“服装选择”和“(项目“&TheId&”)选择颜色
Target.Offset(,3)。选择
Target.Offset(,3).Application.SendKeys“%{UP}”
如果结束
如果ItemVal=“”,则
MsgBox“选择你真正想要的物品”,“取消!”
Application.EnableEvents=False
Target.ClearContents
如果结束
如果结束
如果结束
如果结束
如果Target.Cells.Count>1,则退出Sub
如果不相交(目标、范围(“C3:C6”和单元格(Rows.Count,“D”).End(xlUp.Row))则为零
如果Target.Value=vbNullString,则
范围(“D”和Target.Row)=vbNullString
范围(“E”和Target.Row)=vbNullString
范围(“F”和Target.Row)=vbNullString
如果结束
如果结束
出口商:
Application.EnableEvents=True
出口接头

End Sub
现在,它正在显示第一个消息框以选择大小,然后立即转到第二个消息框以选择颜色并打开该下拉框,我需要等待第一个下拉框选择完成。因此,在打开下拉框后,没有任何东西会阻止脚本运行,所以它会一直持续下去。不确定最佳解决方案是什么,但有一个选项是在自定义用户表单中使用列表或组合框进行数字选择。验证列表中的尺寸取决于所选的服装项目。对于此工作表,我需要它打开包含大小验证列表项的单元格,然后在选择一个后打开包含颜色验证选项的单元格。但是,将框移动到userform应该不会有问题。userform如何实现这一点?