Im doing the same thing, what I meant was call your vba from a script, so that if it crashes, you can see where it stopped. I realize crash is the wrong word, but you know what I mean. I have a very similiar program I use to check what comes from consultants, runs an audit, purges, checks layer, linetypes, fonts, dims etc.