You can do that, or at least something functionally similar. You can add extra "fallback" module sets to any row to do what you described - if the first set has productivity modules and the current recipe/machine doesn't take them, it will try the next set. In the sample image, the default module row is configured like that - it will place productivity modules in anything that accepts them, if not then it will try quality modules, and if those also don't work it will try speed modules.
Or are you thinking of a situation this doesn't cover?