参考由Worksheet.copy方法制作的Excel工作簿

我正在尝试编写一个macros,使用.Copy (MSDN)方法将工作表复制到新的工作簿中,然后将这些新创build的文件保存并通过电子邮件发送出去。

要做到这一点,我将需要对macros中新创build的工作表的引用。 我还没有find一种方法来直接与副本,我犹豫总是寻找Book1.xlsx

有没有办法抓住最近打开的工作簿,或轻松地比较工作簿集合之前和之后?

您可以告诉工作表Copy方法将工作表放在其他工作簿中的工作表之前/之后。 因此,创build一个新的工作簿,然后将您的工作表复制到新工作簿中的第一个工作表之前。

 Dim newBook As Workbook Set newBook = Workbooks.Add Workbooks("source_book.xlsx").Worksheets("sheet_name").Copy Before:=newBook.Worksheets(1) 

然后,您将获得一份有效的工作簿参考书,其中包含工作表副本。

那好吧

 Dim origBook As Workbook, newBook As Workbook Set origBook = Workbooks.ActiveWorkBook yourcode..yourcode..yourcode.Copy Set newBook = Workbooks.ActiveWorkBook 

就是这样