Hi Richard, yes I did. But the input is not always digits/numbers alone and the place of the letters can change at every single input. They can be at the beginning: YZR1234, result YZR-12-34, in the middle: 12YZR34, result 12-YZR-34. Or it can be only 2 letters: TA1234, result TA-12-34. An input of TA123 should return TA-12-3, where an input of TA12345 should return TA-12-345 I think it's hard to put all the possibilities into a 'telephonish' calculation format. That's why I made the CF years ago, to first isolate the digits and put back the rest of the input at each iteration.