Hi Group, I'm not sure how to describe my problem so I'll do my best to explain what I'm trying to find out how to do it. I have a range of numbers which consists of anywhere from 27000 rows to over 500000 rows of data which I run a macro on that allows me to scan for duplicate numbers in rows and remove that row. Anyhow, when the macro is running it can take quite a while to run, sometimes over a day. What I would like to do is put the whole range from the spreadsheet in an array, and run the program on the array and then transpose it back to the spreadsheet. This method is suppose to be faster because of the time saved from updating the spreadsheet as it goes. I've already used the <Applications.Screenupdating> command in hopes to speed it up a bit but I'm still have long running times. How can I use VBA to find the limits of whatever range is in the spreadsheet and enter it into an array for the macro to run on it and then past the results back into the spreadsheet. I know it has something to do with using UBound and LBound but I am not sure how to configure it. Any help would be appreciated.

Thank you.