I can't be certain but it looks as if you have a number of Exit Sub statements in the Blue code that will eject your from the routine before the Red code is reached.
My suggestion would be to use the Debugger in VBE (select a line near the top of the procedure and press F9, this will create a breakpoint that will let you step through the code with F8 (or use Debug menu) and examine the variables to see what is happening). That should also show you where the flow of the code differs from what you expect.
Not a lot of help I'm afraid, but at least a strategy to help you find the answer.
All the best.