I 2001 ble han valgt til Folketinget fra Århus amtskrets, etter å ha blitt nominert av Venstre i Silkeborg krets. Han tilhørte den liberalistiske fløyen av partiet. Den 10. mai 2007 meldte han overgang fra Venstre til Ny Alliance, senere omdøpt til Liberal Alliance, etter mer enn 40 år som medlem av Venstre. Samme år ble han valgt til formann i Liberal Alliances hovedstyre, og dermed leder for organisasjonsbyggingen. Mikkelsen ble ikke gjenvalgt til Folketinget ved valget i 2007, men ble valgt fra Vestjyllands storkrets i 2011 og 2015. Han var formann i Liberal Alliances folketingsgruppe 2016–2018 og medlem av Folketingets presidium 2016–2019. Han stilte ikke til gjenvalg i 2019.