Was able to build a fully dynamic solution (meaning the input data could change and nothing else needs to change to get the correct result) WITHOUT the use of a macro and fairly simple design and not overly complicated.
Originally while making this, I had figured out the rough solution. The only issue was that I didn't exclude the right items, something that took a while to be fixed.