@SMcNeill this is why your example doesn't quite work: Take a rain event where it's -10 degrees and the wind is blowing at 120. In this case, the correct case is "Hurricane". However, your code will fall through without incrementing any of the counters.
Then it should look a little more like this:
Select Case Event
Case 1
check_rain:
If Temperture < 0 GoTo check_snow
RainEvent = RainEvent - 1
Case 2
check_snow:
If SnowDays > 31 GoTo check_wind
SnowEvent = SnowEvent + 1
Case 3
check_wind:
If Windspeed > 100 GoTo check_hurricane
WindEvent = WindEvent + 1
Case 4
check_hurricane:
HurricaneEvent = HurricaneEvent + 1
End Select
Folks seem to hate GOTO nowadays, but in some cases, it really is the simplest way to do things. For what Dimster posted above, I honestly think I'd write my code like the above. SELECT CASE event will jump me into the 1 to 4 block, and the GOTOs, if necessary, will advance me down to the next case until I get to the proper result.
Here, it's a simple one directional downflow of code, with expressive labels to indicate what's going on in the code. I don't really consider this "spaghetti code" as it doesn't weave up and down and get in a tangled mess, and I'd honestly have no issues at all in using GOTO in such a manner in my code. GOTO is a tool in our toolbox for a reason, and sometimes, it just makes sense. ;)