W wyborach parlamentarnych w 2005 z listy Prawa i Sprawiedliwości uzyskał mandat posła w okręgu poznańskim liczbą 17 503 głosów. W wyborach w 2007 bez powodzenia ubiegał się o reelekcję. Ślubowanie poselskie złożył jednak 22 stycznia 2008, zastępując Zytę Gilowską, która zrezygnowała z mandatu poselskiego. Był m.in. wiceprzewodniczącym Polsko-Tajwańskiego Zespołu Parlamentarnego.

9 kwietnia 2009 zrezygnował z członkostwa w Prawie i Sprawiedliwości (formalnie przestał być członkiem partii 14 lipca 2010). 21 października 2009 został członkiem utworzonego tego dnia koła parlamentarnego Polska Plus, a 9 stycznia 2010 pełnomocnikiem nowej partii o tej samej nazwie na województwo wielkopolskie. Po samorozwiązaniu partii (z której wówczas wystąpił) 24 września tego samego roku nie przystąpił do PiS i ponownie został posłem niezrzeszonym, a 23 listopada 2010 został członkiem nowo utworzonego klubu parlamentarnego Polska Jest Najważniejsza. Nie przystąpił do zarejestrowanej w marcu 2011 partii PJN, a 9 czerwca tego samego roku zrezygnował z zasiadania w klubie parlamentarnym, decyzję uzasadniając brakiem deklaracji o wykluczeniu współpracy z PiS. 12 lipca tego samego roku został przyjęty do klubu parlamentarnego Platformy Obywatelskiej, po czym został z jej ramienia wybrany do Senatu w wyborach parlamentarnych w 2011 w okręgu nr 89.