As I like to tell my customers, anything is possible. It's software.
There are a couple of different ways to have a dynamic report with optional sections.
1) The basic way is to use subsummary parts and manipulate the sort on the report so the parts you want will show. Since a subsummary part will only appear if the found set is sorted on the break field for which the part is defined, you can turn the subsummaries on and off at will.
2) The more complicated method involves using a Virtual List and manipulating the contents of the list based on what you want. There are plenty of resources online on this technique.
If the "sections" you reference are all in the same table (or can be defined from there), it's probably easier to use the subsummary method. Otherwise, you might have to resort to the Virtual List.