嘿家伙我是一个老屁,这是我的第一篇文章,所以请善待。我正在使用基于测量机器上的基础的专有语言。为了测试目的,我故意将前两项检查设置为失败。尺寸X的第一组ifs很好。当代码运行并且它到达Size_Y时,如果操作符选择“不,我不想重新测量”(返回7),则代码跳转到最后一端。我怀疑我不适当地嵌套我的Ifthens,但我看不到它。嵌套if语句跳过其他ifs
Private Sub CheckSpec
'give operator a message if the measure is out of spec
StartAgain:
If Size_X <= 3.125 OR Size_X >= 3.125 then 'actual spec
'Warn that measure is not in spec and ask for remeasure
BoxPick=Msgbox("Measurement in Zone " & Zone & " for Die Size in X is not in spec. Do you want to measure it again?" , 4 , "Measurment NOT Within Tolerance")
If BoxPick = 6 THEN 'if operator wants to remeasure, measure again and start checks over
Call Measure_Die
GoTo StartAgain
ElseIF BoxPick <> 7 Then 'If value returned is NOT 6 or 7, throw error
OperatorMsg "An error has occured. Contact the tool owner"
Call Unload
ElseIF BoxPick = 7 Then 'If operator chooses not to remeasure then keep going
Else
End If
Elseif Size_Y <= 1.925 OR Size_Y >= 1.925 then
'Warn that measure is not in spec and ask for remeasure
BoxPick=Msgbox("Measurement in Zone " & Zone & " for Die Size in X is not in spec. Do you want to measure it again?" , 4 , "Measurment NOT Within Tolerance")
If BoxPick = 6 THEN 'if operator wants to remeasure, measure again and start checks over
Call Measure_Die
GoTo StartAgain
ElseIF BoxPick <> 7 Then 'If value returned is NOT 6 or 7, throw error
OperatorMsg "An error has occured. Contact the tool owner"
Call Unload
ElseIF BoxPick = 7 Then 'If operator chooses not to remeasure keep going
Else
End If
Elseif Centration_X <= 0.175 OR Centration_X >= 0.225 then
'Warn that measure is not in spec and ask for remeasure
BoxPick=Msgbox("Measurement in Zone " & Zone & " for Die Size in X is not in spec. Do you want to measure it again?" , 4 , "Measurment NOT Within Tolerance")
If BoxPick = 6 THEN 'if operator wants to remeasure, measure again and start checks over
Call Measure_Die
GoTo StartAgain
ElseIF BoxPick <> 7 Then 'If value returned is NOT 6 or 7, throw error
OperatorMsg "An error has occured. Contact the tool owner"
Call Unload
ElseIF BoxPick = 7 Then 'If operator chooses not to remeasure keep going
Else
End If
Elseif Centration_Y <= 0.95 OR Centration_Y >= 1.0 then
'Warn that measure is not in spec and ask for remeasure
BoxPick=Msgbox("Measurement in Zone " & Zone & " for Die Size in X is not in spec. Do you want to measure it again?" , 4 , "Measurment NOT Within Tolerance")
If BoxPick = 6 THEN 'if operator wants to remeasure, measure again and start checks over
Call Measure_Die
GoTo StartAgain
ElseIF BoxPick <> 7 Then 'If value returned is NOT 6 or 7, throw error
OperatorMsg "An error has occured. Contact the tool owner"
Call Unload
ElseIF BoxPick = 7 Then 'If operator chooses not to remeasure keep going
Else
End If
Else
End If
Print #1, Column & "," & Row & "," & Level & "," & Zone & "," & Size_X & "," & Size_Y & "," & Centration_X & "," & Centration_Y & "," & RightNow
End Sub 'CheckSpec
欢迎使用stackoverflow!我格式化了一下。它实际上看起来很像我的Visual Basic ... – MPelletier 2012-02-24 15:11:35