I have a form that has four fields that input into a If / ElseIf code.
the fields are Dropdown (#1) StateFDI = 100, 80, 50 or 40
Dropdown (#2) InVeg_1 = A, B, C, D, E, F, G, G2 or MUG
Dropdown (#3) InSlope_1 = 0, 5, 10, 15 or 20
Field (#4) InDistance_1 = 1 to 100
These fields input into the code to output a Bushfire Rating based on Fire Weather, Vegetation, Slope & Distance
I have the code triggered set as an event procedure on Change for InDistance.
I keep getting a Compile error: Block If without End If and Highlights End Sub? Any help would be REALLY Great
I have attached a text file with the full length code as I was 50000 characters too long
The Code, I did say it was long :-)
Private Sub InDistance_1_Change()
If Me.StateFDI = "40" Then
If Me.InSlope_1 = "0" Then
If Me.InVeg_1 = "A" Then
If Me.InDistance_1 < 10 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 9 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 20 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 19 And Me.InDistance_1 < 28 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 27 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "B" Then
If Me.InDistance_1 < 6 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 5 And Me.InDistance_1 < 9 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "C" Then
If Me.InDistance_1 < 7 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 9 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "D" Then
If Me.InDistance_1 < 10 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 9 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 27 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 26 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "E" Then
If Me.InDistance_1 < 6 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 5 And Me.InDistance_1 < 8 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 12 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 17 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 16 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "F" Then
If Me.InDistance_1 < 4 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 3 And Me.InDistance_1 < 5 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 4 And Me.InDistance_1 < 8 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 12 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "G" Then
If Me.InDistance_1 < 4 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 3 And Me.InDistance_1 < 5 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 4 And Me.InDistance_1 < 8 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 12 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 50 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 50 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "MUG" Then
Me.BAL1 = "Low"
End If
If Me.InSlope_1 = "5" Then
If Me.InVeg_1 = "A" Then
If Me.InDistance_1 < 12 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 16 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 15 And Me.InDistance_1 < 24 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 23 And Me.InDistance_1 < 34 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 33 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "B" Then
If Me.InDistance_1 < 8 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 11 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 16 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 15 And Me.InDistance_1 < 23 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 22 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "C" Then
If Me.InDistance_1 < 7 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 10 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 9 And Me.InDistance_1 < 15 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 14 And Me.InDistance_1 < 22 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 21 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "D" Then
If Me.InDistance_1 < 11 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 15 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 14 And Me.InDistance_1 < 22 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 21 And Me.InDistance_1 < 31 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 30 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "E" Then
If Me.InDistance_1 < 7 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 9 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 20 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > "BAL-19" And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "F" Then
If Me.InDistance_1 < 5 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 4 And Me.InDistance_1 < 7 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 10 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 9 And Me.InDistance_1 < 15 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 14 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "G" Then
If Me.InDistance_1 < 4 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 3 And Me.InDistance_1 < 6 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 5 And Me.InDistance_1 < 9 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 14 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 13 And Me.InDistance_1 < 50 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 50 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "MUG" Then
Me.BAL1 = "Low"
End If
If Me.InSlope_1 = "10" Then
If Me.InVeg_1 = "A" Then
If Me.InDistance_1 < 15 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 14 And Me.InDistance_1 < 20 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 19 And Me.InDistance_1 < 29 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 28 And Me.InDistance_1 < 41 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 40 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "B" Then
If Me.InDistance_1 < 9 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 28 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 27 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "C" Then
If Me.InDistance_1 < 8 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 11 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 17 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 16 And Me.InDistance_1 < 25 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 24 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "D" Then
If Me.InDistance_1 < 12 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 17 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 16 And Me.InDistance_1 < 24 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 23 And Me.InDistance_1 < 35 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 34 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "E" Then
If Me.InDistance_1 < 7 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 10 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 9 And Me.InDistance_1 < 15 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 14 And Me.InDistance_1 < 23 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 22 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "F" Then
If Me.InDistance_1 < 6 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 5 And Me.InDistance_1 < 8 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "G" Then
If Me.InDistance_1 < 5 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 4 And Me.InDistance_1 < 7 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 6 And Me.InDistance_1 < 11 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 16 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 15 And Me.InDistance_1 < 50 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 50 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "MUG" Then
Me.BAL1 = "Low"
End If
If Me.InSlope_1 = "15" Then
If Me.InVeg_1 = "A" Then
If Me.InDistance_1 < 19 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 25 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 24 And Me.InDistance_1 < 36 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 35 And Me.InDistance_1 < 49 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 48 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "B" Then
If Me.InDistance_1 < 12 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 11 And Me.InDistance_1 < 16 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 15 And Me.InDistance_1 < 24 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 23 And Me.InDistance_1 < 35 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 34 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "C" Then
If Me.InDistance_1 < 9 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 8 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 28 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 27 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "D" Then
If Me.InDistance_1 < 14 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 13 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 28 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 27 And Me.InDistance_1 < 39 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 38 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "E" Then
If Me.InDistance_1 < 8 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 11 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 18 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 17 And Me.InDistance_1 < 26 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 25 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "F" Then
If Me.InDistance_1 < 8 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 11 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 10 And Me.InDistance_1 < 16 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 15 And Me.InDistance_1 < 24 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 23 And Me.InDistance_1 < 100 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 100 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "G" Then
If Me.InDistance_1 < 6 Then
Me.BAL1 = "FZ"
ElseIf Me.InDistance_1 > 5 And Me.InDistance_1 < 8 Then
Me.BAL1 = "BAL-40"
ElseIf Me.InDistance_1 > 7 And Me.InDistance_1 < 13 Then
Me.BAL1 = "BAL-29"
ElseIf Me.InDistance_1 > 12 And Me.InDistance_1 < 19 Then
Me.BAL1 = "BAL-19"
ElseIf Me.InDistance_1 > 18 And Me.InDistance_1 < 50 Then
Me.BAL1 = "BAL-12.5"
ElseIf Me.InDistance_1 > 50 Then
Me.BAL1 = "Low"
End If
ElseIf Me.InVeg_1 = "MUG" Then
Me.BAL1 = "Low"
End If
End Sub