The real way to solve this first must consider what you want to do when you encounter a number and there is already a sheet named using that number. What do you want to happen in that case?
A simple but unsophisticated way to solve this is by sorting your data on column A. Then your code will work.
Another way is to ignore errors, adding the lines shown to your existing code. If an error occurs creating a new sheet (most likely because of a duplicate), the code skips trying to copy the row of values, and simply keeps going. I have tested this.
Bookmarks