如何将Excel工作表导出到新工作簿中

时间:2009-05-08 15:13:16

标签: c# .net vb.net excel

我有一堆包含多个工作表的Excel工作簿。我想遍历每个工作簿并将每个工作表导出到它自己的新工作簿中。我想在每个新工作簿中使用一个工作表。

这是我到目前为止所得到的:

   Sub ExportWorksheet(ByVal worksheet As Excel.Worksheet, ByVal filePath As String)
      Dim xlApp As Excel.Application = New Excel.ApplicationClass
      Dim xlWorkBook As Excel.Workbook = xlApp.Workbooks.Add
      worksheet.Select()
      worksheet.Copy()
      xlWorkBook.Worksheets.Add()
      worksheet.Paste(Destination:=xlWorkBook)

      xlWorkBook.SaveAs(Filename:=filePath)

      xlWorkBook.Close(False)
      xlApp.Quit()
   End Sub

2 个答案:

答案 0 :(得分:4)

在Excel中,这可以通过将工作表复制到新工作簿来完成,而不是通过创建新工作簿然后向其添加工作表来实现。这是通过使用Worksheet.Copy而不指定工作簿中要放置复制的工作表的位置来实现的。

更多阅读:http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.worksheet.copy(VS.80).aspx

答案 1 :(得分:1)

卫生署!

worksheet.SaveAs(Filename:=filePath)