1. A programming method for a multilevel memory cell able to store a plurality of bits in a plurality of levels, comprising the phases of: initially programming a cell threshold value to a first set of levels &lsqb;0;(m−1)&rsqb; being m a submultiple of the plurality of levels of the multilevel cell; reprogramming without erasing another set of levels &lsqb;m;(2m−1)&rsqb; containing the same number m of levels as the first set; reiterating the reprogramming without erasing phase until the levels of the multilevel cell are all exhausted.