This looks like it would be better served with a few queries in a macro and zero vba code.