Richard: Else commands can be a little tricky the elses have to be just right or the wrong one will fire or (as in your case) the first one always fires.
post your conditions and the conditions of the else and I'll see if I can spot the problem!
the best way I found of getting elses to work properly is to think of it as a child. You can't say "if you want have a cookie else, if it is before dinner you can't have a cookie else, if it is after bedtime you can't have a cookie." (have a cookie has to be the last else) Macros stop at the first else that meets the requirements.( kids always want cookies!)