It does work because I have used it in a VB program where I have directories set up for days of the week and it does delete all files in each directory Monday, Tuesday, Wednesday, Thursday, Friday. In fact, because I hadn't used it for a while I tested it again before posting it.
In answer to your question, the reason it probably isn't working in your example is because you have further subdirectories in your subdirectories, therefore it won't delete those properly.
In answer to your question, it doesn't need to know the sub-directory name because that it returned by the Dir function.
let me ask a question that will make all our lives easier:
Are the directories and subdirectories static or do you create them dynamically?
Ian