Will this ADC circuit work as intended?
Vref
Since you use the same voltage for the resistor divider and Vref the ADC reading will be independent of that voltage: if your ADC reading is 123 at 3.3 V it will also be 123 at 3.0 V. So the absolute value of Vref is not really important. 

Nevertheless it's a good idea to have a Vref which is independent of other circuitry. In your schematic the 3.3 V is also used to supply the comparator and ADC with power. I would at least use an RC filter to get Vref from that 3.3 V. Like I said the actual value of Vref is not important, so you can afford some voltage drop across the resistor, allowing for a lower cutoff frequency.  

Comparator
Your comparator may not work. Your reference voltage is at 0 V, which is the lowest voltage in the circuit. Many comparators have a built-in hysteresis, which means that the + input will have to go a bit below the - input to get the output low again, and you can't do that. Use a resistor divider to bring the threshold a bit higher, like around 50 mV.

1 % accuracy
Sorry, but this won't work at all. For the 1 &Omega; range you have a resistor divider of (10 k&Omega; + 1 &Omega;) | 100 k&Omega;. The 1 &Omega; is 0.01 % of the 10 k&Omega; it's in series with; if you want to know it to 1 % accuracy you'll have to start by knowing the 10 k&Omega; value to 1 ppm accurate. A 1 °C change in temperature will already drown the 1 &Omega; value.  

Also the 1 &Omega; - 10 M&Omega; range is much too large for a single divider.  



This graph shows the output of the divider relative to the ADC's full scale. Notice that the reading will hardly change between 1 &Omega; and 1 k&Omega;. Even with a 22-bit accurate ADC a 1 &Omega; resistor and a 1.03 &Omega; one will give the same reading. Note that 22-bit resolution doesn't mean 22-bit precision. Read the ADC's datasheet, and realize that 1 LSB is 0.25 ppm. Then everything matters: that 5 cm PCB trace may introduce more than an LSB error, for example. A 22-bit ADC doesn't help here. I would use different dividers for each decade.

edit re the updated circuit
You've got R1, R5, R7, R9 and R13 all in parallel giving an equivalent of a single 9 &amp;Omega resistor. I wanted to add this about your R1 in the original circuit but forgot. It serves no purpose, it just reduces the measurement range for low resistances by 10 %. You can see in the graphs that you only go to 90 % of FS, and R1 is responsible for that. Ditch it. So that goes for the others I summed up as well.
R2 will always be parallel to one of the other resistors, so you either have to switch that as well, or remove it. 

Your resistor divider voltage is still connected to Vcc. In order to have measurements independent of the voltage it must be connected to Vref.

The Si5406 you use is good: it has a low \$V_{GS(th)}\$ and \$R_{DS(ON)}\$. Note however that it has a leakage current of up to 1 &micro;A, which will distort especially your high resistance measurements. (It's one of the things which makes precision measurements so hard.) Other FETs don't do much better, though: even so-called "low leakage" FETs may have a value around that, albeit at higher \$V_{DS}\$. A solution may be to use reed relays instead of FETs.

edit: Fine-tuning and some final thoughts
I know, adding FET U10 was my suggestion, but I changed my mind: we're going to remove it again, and use a fixed 1 M&Omega; resistor there. Not only does it saves us a part, but there was also the FET's leakage current: we don't have a good value for the equivalent resistor it represents, and when we use a fixed resistor we know what we have.  

I also played a bit with the different dividers, and found that we only need two: the 100 &Omega; and the 10 k&Omega;.  



The left part of the graph shows the ADC's input relative to FS with U6 switched on, the middle part with U8 switched on, and the right part with neither, just the fixed 1 M&Omega; R2. 



This graph shows the difference in ADC reading for a 1 % difference in resistance value. For example a 100 &Omega; and a 101 &Omega; resistor give a 10 000 count difference, that's more than 13 bit! Even worst case, for 1 &Omega; and 10 M&Omega; the difference is more than 256 counts, or 8 bit. This means that we could have used a 14-bit ADC here as well. The 22-bit isn't bad, though: it's a sigma-delta, which suffers less from noise.  

To get your required 1 % precision there are some things which still need to be looked at. First the resistors for the divider have to be precision parts, obviously: 0.1 %. There's still the FET's leakage current, which may cause a large error in the high resistance values. You mention a price of 5 dollar for the reed relay, but I found some, also at Digikey, which are only 1 dollar, and now you'll only need two of them anymore. They do need 5 V however, or at least 3.75 V.  

Other leakage currents. For the comparator take a CMOS version, then input bias current will be negligible. But the ADC has a differential input impedance of 2.4 M&Omega; typical. If it were a fixed resistance we could just take it into the calculations, but it's very much unknown, so we better use a CMOS buffer opamp for the signal there as well.


edit re revision 4
If you swap the inputs of the comparator you won't need the inverter, and pull-up resistor R14 isn't needed either if you use an MCP6541 comparator, which has a push-pull output.  

I'm a bit confused by the 74ABP04 buffers to drive the relays. The pin numbers don't agree with the datasheet and pins 1 and 4 look like enable pins, which the '04 doesn't have. I would have used common NPN transistors there anyway since they're a lot cheaper. You would only need P1.2 and P1.11. 4.7 k&Omega; base resistors will give you 0.5 mA base current, enough for the reed relays. Don't forget the diodes across the relays' coils.

The offset voltage of the buffer opamp is indeed a problem. I found the MCP6071, which has a very low input bias current (1 pA typical, 100 pA maximum), but the offset voltage is still 150 &micro;V. The feedback from output to inverting input should also have the same impedance as the impedance on the non-inverting input, but that's not constant. You can trim the offset away with a potmeter and a high series resistance like 100 k&Omega; to the inverting input.

Don't forget decoupling capacitors for the comparator and ADC's power supplies.


edit re revision 5
Almost there! The resistors in series with the relays aren't required; the relay coil's resistance limits the current, and besides, the series resistance will lower the coil voltage so that the relay may/will not activate. I would take the comparator's input from the buffered output, so that the resistor divider only sees the buffer's input. And the offset trimmer will work, but be too sensitive to the slightest turning of the trimmer. Reduce the sensitivity by placing a 470 k&Omega; resistor between the pot's wiper and the opamp's inverting input.