That is - keep battery in, but still be able to program the device via the adapter?
Basically what is happening here is that if Vin is at ground, that is there is no voltage applied to Vin, ( there is a 10K resistor elsewhere in the circuit connecting Vin to ground) . Then any voltage on Vusb will pass through to the +5V line.
If there is a voltage on Vin greater than 5V then it will stop the 5V from getting through the other way and powering the Vusb line.
If you look at the rest of the circuit in the Arduino Micro you will see that a voltage on Vusb will power the USB micro, so with this system that chip is not powered.
You need more than just this FET, there is another FET on the input to the voltage regulator. Look at the whole Arduino Micro schematic.
For your system perhaps the Leonardo power scheme might be better. Here a comparator sees if the Vin is greater than twice 3V3 and if so cuts out the power from the USB port into the voltage regulator. Attached is just that bit of the diagram.
Hope that helps