Floating point numbers have a higher precision owing to the way they are represented. They have a sign bit, an 8 bit exponent and a 23 bit value. It is the exponent which gives the flexibility in floating point numbers. Have a look at IEEE 754 format for more details.
In fixed point numbers, the number of values after the decimal is fixed. They are represented in something called the Q format. E.g. Q15 format has the MSB as sign bit and the remaining 15 bits are used to represent the values after the decimal. There is no exponent in this fixed point format. Hence, the range of numbers is limited. There are various such Q formats which you can choose based on your design. So the range of values varies based on the specific format you choose.