Как экспортировать листы Excel в новые книги - PullRequest
2 голосов
/ 08 мая 2009

У меня есть куча книг 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 ]

4 голосов
/ 08 мая 2009

В Excel это может быть достигнуто путем копирования рабочего листа в новую рабочую книгу, а не путем создания новой рабочей книги и последующего добавления к ней рабочей таблицы. Это достигается с помощью Worksheet.Copy без указания места в рабочей книге, куда вы хотите поместить скопированный лист.

Больше чтения: http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.worksheet.copy(VS.80).aspx

1 голос
/ 08 мая 2009

Doh!

worksheet.SaveAs(Filename:=filePath)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...