"Out of stack space" happens almost always because of runaway recursion. A Sub calls itself, and this happens so many times you build up this very deep stack of calls to this sub and you run out of available space.
I ran an analysis on your code and found that the code filter_MBO_promo_shop_xxx for each month calls filter_VO_promo_shop_xxx for the following month. This leads to more code that eventually calls the following month, and then in December it calls Start. I think this creates a loop which never ends, which would explain why you are running out of stack space. You should do a detailed trace of this code to see if this is the problem, and then re-think you logic to see what you really want the code to do.
Second you need to improve your code structure. Many subs end by calling another sub. Instead of daisy-chaining these subs together you should have one master sub that calls them all in sequence.
You have a copy of the code for each month that is identical except for a couple of small things. You should have one copy of the code that uses an argument for this. Otherwise, if you ever have to change your code, you will have make the same change in 12 places.
As an example here is the first part of one sub:
I would rewrite it like this and call it as shown below.
Other things I noted but are not causing your problem:
You declare variable ColNum but never use it.
Bookmarks