Gramática Ativa 1 & 2 are excellent. Although the explanations are in Portuguese, the many examples quickly make clear each grammatical point. However, it is the exercises that accompany each chapter that really help to consolidate your learning. The layout is very user friendly.
I also use ‘Portuguese Grammar You Really Need to Know” by Sue Tyson-Ward. (It is part of the Teach Yourself series)
It is a more detailed grammar without being too heavy. I find it helpful to ‘dip into’ when I need more explanation of a grammatical point. Although you could work your way through it, I think it works better to use it to supplement your learning from other areas. There are exercises at the end of each chapter but personally I do not rate them. That said, it is my ‘Bible’ for Portuguese Grammar that I can turn to if I need to quickly check a grammatical point.