Using Enable to switch between two Decoders
What you describe would be to output 'Z' on the else branch, which translate to High-Impedance. If one driver outputs XYZ and all other drivers connected to it output 'Z', the result is XYZ.

The 'Z' translate to a tri-state buffer inside the FPGA. However, tri-state buffers don't exist anymore on modern FPGAs for anything else than output drivers (i.e. on a FPGA pin). You can achieve what you want by using a mux in the top level:

muxOut &lt;= decTop when enable = '1' else
          decBot;


If you have several drivers, another popular scheme is to output zeros when a driver is not selected, and or'ing all the drivers together.

Otherwise, never connect several drivers to the same wire, it is a bad design practice and will likely won't work.