Yes, you can do this task with MATLAB. Please try the following:
inputFile = 'myfile';
A = xlsread([ inputFile '.xlsx' ]);
M = 1000;
N = 900;
for k = 0:N-1
outputFile = [ inputFile num2str(k+1,'%03i') '.xlsx' ];
I have tested this code for M = 20 and N = 10, and it works just fine. I suspect, however, that it will take a long time to run for a file containing 900,000 numbers.