This routine works now, but I'm wondering why it was doing what it was doing before I fixed it..
I was using vlide to watch, and when it went up to sheetlist it did what it was supposed to do, but then when it went back down to the next line the part and blkname values changed to the 3rd item in the lists "cleanblklist" and "cleanmodellist", it did this each time until it had processed the list. I removed the variables "part" and "blkname" to stop them from being reset in sheetlist, and it did the trick.
I would just like to know why resetting the variables caused the routine to malfunction period, and why it kept changing the values to the 3rd item in those two lists.. don't want to miss something possibly important.