I'm not sure what your trying to accomplish...could you e.g. provide two test files, some row/column selections and the result you expect?
A couple of comments about the VI as it is now;
* Why read the files twice? Instead of doing that, wire the 2D array output not only to the array dimensions function but into the for-loop where you want it as well. The for loop will by default use auto-indexing on incoming arrays, however if you right-click on the tunnel you can tick off that...and you now only read the file(s) once.
* # of columns across is read using a local when you could just wire the data directly from the terminal. Locals use unnecessary memory and slows things down, the rule is to stick with wires whereever you can.
* When you
extract a sub-array by specifying start column, columns across and # of rows down the output as it is now, if you specify 2 rows, start column 0 and # of columns across does not work as you planned it to I think...the output as it is now is an array of 2 rows where the first row contains columns number 8 and the second row contains column number 9...Now knowing exactly what it is your want to do with the files I'm not sure...but that does not seem to be what you want...or?