VBScript Readline方法忽略第三条IF语句

VBScript Readline方法忽略第三条IF语句,vbscript,readline,Vbscript,Readline,我的脚本似乎没有再次检查第三条if语句的“secLine”。它应该记住“secLine”中存储的内容 全文如下: PHL DEPARTURES OVER TUSKY PLEASE FILE: PHL..DITCH.V312.JIMEE..WAVEY..SHLEP..ACK..DIRECT 脚本: If InStr(firLine, "PHL DEPARTURES OVER TUSKY PLEASE") Then secLine = objFile.ReadLine If InS

我的脚本似乎没有再次检查第三条if语句的“secLine”。它应该记住“secLine”中存储的内容

全文如下:

PHL DEPARTURES OVER  TUSKY  PLEASE FILE:
PHL..DITCH.V312.JIMEE..WAVEY..SHLEP..ACK..DIRECT
脚本:

If InStr(firLine, "PHL DEPARTURES OVER  TUSKY  PLEASE") Then
    secLine = objFile.ReadLine
If InStr(secLine, "JFK..PUT..BOS..DIRECT") or InStr(secLine, "PHL..DITCH.J225.JFK..PUT..BOS..DIRECT") Then  
    trans507="TUSKY"
    ind507="1"

    bunch of code

If Instr(secLine, "WAVEY..SHLEP..ACK..DIRECT") Then
    ind507="2"

    bunch of code

End If
End If
End If

确保第一个IF成功(现在发布的数据与文本不匹配)

不要使用IF语句的缩短版本。始终使用

If ... Then
   ...
End If
确保缩进真正反映了脚本的结构

代码:

If InStr(firLine, "PHL DEPARTURES OVER TUSKY PLEASE") Then
    secLine = objFile.ReadLine
    If InStr(secLine, "JFK..PUT..BOS..DIRECT") or InStr(secLine, "PHL..DITCH.J225.JFK..PUT..BOS..DIRECT") Then
       trans507="TUSKY"
       ind507="1"
    End If
    If Instr(secLine, "WAVEY..SHLEP..ACK..DIRECT") Then
       ind507="2"
    End If
End If

您当前的编辑(3个尾端Ifs)无法完成您想要的操作;如果缩进正确,你就会明白原因了。谢谢。那是一个愚蠢而明显的错误我的部分。。。。所以解决方案是,我不能把所有的“如果结束”语句放在底部,我需要在第一个If InStr(secLine…再次感谢)中“如果结束”。