I'm hoping for another set of eyes to look over my code. I'm writing a relatively big If...Else... statement. It appears that everything is coded properly. I've stepped through the entire script but one spot keeps giving me an "Expected 'End If'" When it seems to me that I don't need that.
Simply put, I'm trying to say: If blah, do these for things. Else If blah, only do one of those things.
Here's the block of code:
If(sLogFile <> "" AND nPing <> 1) Then
pingStatus = 1
If(findTag(sLogFile, daRunning) = 1) Then
daStatus = 1
Else If(findTag(sLogFile, daNotRunning) = 1) Then
daStatus = 2
Else
daStatus = 3
End If
If(daStatus = 1 AND findTag(sLogFile, daDataFlowing) = 1) Then
daFlowStatus = 1
Else If(daStatus = 1 AND findTag(sLogFile, daDataNotFlowing) = 1) Then
daFlowStatus = 2
Else If(daStatus = 1 AND findTag(sLogFile, daDataUnchecked) = 1) Then
daFlowStatus = 3
Else If(daStatus <> 1) Then
daFlowStatus = 4
End If
If(findTag(sLogFile, aeRunning) = 1) Then
aeStatus = 1
Else If(findTag(sLogFile, aeNotRunning) = 1) Then
aeStatus = 2
Else
aeStatus = 3
End If
If(findTag(sLogFile, aeDataUnchecked) = 1) Then
aeFlowStatus = 2
Else If(findTag(sLogFile, aeDataExecutionError) = 1) Then
aeFlowStatus = 3
Else If(findTag(sLogFile, aeDataConnectionError) = 1) Then
aeFlowStatus = 4
Else If(findTag(sLogFile, aeTimeStamp) = 1) Then
location = InStr(sLogFile, aeTimeStamp)
leftTrimmedString = LTrim(Mid(sLogFile, (location - 2)))
location = InstrRev(leftTrimmedString, ":")
dateString = Trim(Mid(leftTrimmedString, 1, (location + 5)))
timeDiff = DateDiff("h", dateString, Now)
If(timeDiff > 5) Then
aeFlowStatus = 5
Else
aeFlowStatus = 1
End If
End If
Else If(nPing = 1) Then
pingStatus = 2
If(findTag(sLogFile, aeDataUnchecked) = 1) Then
aeFlowStatus = 2
Else If(findTag(sLogFile, aeDataExecutionError) = 1) Then
aeFlowStatus = 3
Else If(findTag(sLogFile, aeDataConnectionError) = 1) Then
aeFlowStatus = 4
Else If(findTag(sLogFile, aeTimeStamp) = 1) Then
location = InStr(sLogFile, aeTimeStamp)
leftTrimmedString = LTrim(Mid(sLogFile, (location - 2)))
location = InstrRev(leftTrimmedString, ":")
dateString = Trim(Mid(leftTrimmedString, 1, (location + 5)))
timeDiff = DateDiff("h", dateString, Now)
If(timeDiff > 5) Then
aeFlowStatus = 5
Else
aeFlowStatus = 1
End If
End If
End If
The error keeps happening at the main Else If about 2/3 of the way down (Else If(nPing = 1) Then). I'm getting the error on that line.
I've tried separating the block into two blocks by putting an End If above the Else IF, then changing the Else If to an If. It works when I do that but I don't really want two if statements.
So, did I mess up, or is there a problem with my interpreter?
Aucun commentaire:
Enregistrer un commentaire