Lavez et épluchez les pommes de terre et le céleri. Coupez les légumes en tranches d'environ 4 mm d'épaisseur et faites les cuire à la vapeur pendant 20 minutes.
Pendant ce temps, préparez la béchamel: faites fondre le beurre dans une casserole, puis ajouter la farine et laisser épaissir sans colorer à feu doux. Verser progressivement le lait sans cesser de remuer jusqu'à ce que la sauce ait la consistance désirée. Assaisonnez de sel, poivre et noix de muscade selon votre goût.
Lorsque les légumes sont cuits, égouttez-les bien et versez-en la moitié dans un plat à gratin, recouvrez de la moitié de la béchamel.
Découpez le jambon en lanières et disposez le sur le gratin. Versez le reste des légumes, puis le reste de la béchamel. Couvrez avec la mozzarella découpée en rondelles et saupoudrez du parmesan râpé.
Enfournez à 180°C chaleur tournante pendant 35 minutes.