Hi..
Anyways thank you so much and any more advice I would again greatly appreciate it. Also, please let me know how I can reverse the negative mark on your record (if I have to go to admin I will). Very sorry about that (must have checked the wrong radio button because I left a good comment).
It's all good.. I must be evil.. but it actually gave me a bit of a chuckle.. and to be honest.. everytime i see the little Red 'naughty' icon in the future.. I will probably grin again at the irony of it.. 
A good place to start is to enable the Locals Window in the VB Editor (View >Locals Window).. then you will be able to step through the code (using F8) and see what the value of the variables are..
By using the forfiles command to populate the Array.. it is doing a few things.
1. Adding values into memory (array) is faster.
2. Its reducing the amount of values that then need to be looped through after that because ONLY the files that have the correct file extension are returned into the array.
Remember ... loops are avoided if possible.. but if you have to loop.. at least loop through only what you need to.. as opposed to looping through all files and testing for a condition..
3. That line is returning the filename AND the filepath and inserting a delimiter (i used the exclamation mark as I thought that would be rarely used in a filename..)
I'll add some comments in the code below to explain more.. these comments may or may not contain 100% correct info. but it will give you an idea of what i was thinking.. 
Hope that makes more sense?
Bookmarks