@Gasman - yes, the first time through the function, the copyfromrecordset dumps the data into excel correctly. Stepping through a little more carefully, it looks like it has some kind of issue with the .listobjects.add portion from the 2nd run and on. I'm trying to look at why it doesn't like that.