1805년(순조 5) 증광 문과에 을과로 급제하여, 1809년(순조 9) 한림도당회권(翰林都堂會圈)에 올랐다. 1825년(순조 25) 예부승지 가선대부(嘉善大夫)가 가자(加資)되었으며 1827년(순조 27) 이조 참판이 되었다.
1830년(순조 30) 경기 감사로 부임하여 칙수불부(勅需不敷)·우역조폐(郵驛凋弊)·환곡모축(還穀耗縮)의 세 가지 병폐를 상소하여 윤허를 얻기도 했다. 경기 감사의 임기가 찼으나 주전 사업(鑄錢事業)이 막 펼쳐졌기 때문에 계속 감사직을 하다가 1832년(순조 32)에 물러났다.
1833년(순조 33) 경기 암행어사 이시원(李是遠)이 주전 통용의 폐해에 대한 계(啓)를 올려 삼사의 탄핵을 받아 황해도 배천으로 유배당했다. 이듬해 신위(申緯)와 함께 풀려났다. 1834년 헌종이 즉위하자, 고부 겸 주청부사(告訃兼奏請副使)로 중국에 갔다.
1837년(헌종 3) 부태묘(祔太廟) 때 종헌관(終獻官)으로 가자되었고, 공조 판서에 올랐다. 1838년(헌종 4) 동지정사(冬至正使)로 다시 중국에 갔으며, 형조 판서 · 예조 판서를 거쳐 1840년(헌종 6) 사헌부 대사헌을 지냈다.