Il est nommé adjudant-commandant le , à l’armée du Rhin, puis, il rejoint le maréchal Soult en Espagne. Il est aux combats de Burgos le , à Ponferrada, à Cacabelos le , et à Lugo. Il combat ensuite au Portugal, il se trouve à la bataille d’Oporto du 27 au , puis il traverse le Douero, et il combat à Talavera le , ou il est blessé sur le pont d’Arzobispo. Le , il passe colonel au service du Royaume d’Espagne, et il est détaché avec un corps d'infanterie sur le Rio Tinto, pour couvrir le blocus de Cadix.