Страница: 1 |
Страница: 1 |
Вопрос: Как создать в Excel-книге лист как в другой книге
Добавлено: 29.12.08 13:08
Автор вопроса: tip
Смысл в том что я в Excel-книге из модуля ВБА создаю ещё книгу, нужно в этой созданой книге создать такой же лист как в той книге из модуля которой я создаю вторую! Код у меня для создания книги есть, как его доработать? Памагите кто может плиз!!!!
создаю так:
Public Function CreateXlBook(sWbName As String, sDirName) As Boolean
' MS Excel hidden instance
Dim objXLApp As Object
Dim objWbNewBook As Object
CreateXlBook = False
Set objXLApp = CreateObject("Excel.Application")
If objXLApp Is Nothing Then Exit Function
' В новой рабочей книге создавать только один рабочий лист
objXLApp.SheetsInNewWorkbook = 1
Set objWbNewBook = objXLApp.Workbooks.Add
If objWbNewBook Is Nothing Then Exit Function
' Сохраняем книгу
objXLApp.DisplayAlerts = False
If vbNullString = Dir(sDirName, vbDirectory) Then Exit Function
objWbNewBook.SaveAs (sDirName + "\" + sWbName + ".xls")
CreateXlBook = True
' Освобождение памяти
Set objWbNewBook = Nothing
objXLApp.Quit
Set objXLApp = Nothing
CreateXlBook = True
End Function
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #1
Добавлено: 29.12.08 14:32
А если просто скопировать лист целиком, а потом сохранить ?
Номер ответа: 2
Автор ответа:
AngryBadger
Вопросов: 33
Ответов: 245
Профиль | | #2
Добавлено: 29.12.08 14:35
По-моему, это самый простой вариант.
Номер ответа: 3
Автор ответа:
AngryBadger
Вопросов: 33
Ответов: 245
Профиль | | #3
Добавлено: 29.12.08 15:04
А можно сделать вот так, в принципе, тоже через копирование листов.
Dim sNameOfCurrentBook As String
sNameOfCurrentBook = ThisWorkbook.Name
Workbooks.Add
Workbooks(sNameOfCurrentBook).Sheets(1).Copy _
Before:=Workbooks(ActiveWorkbook.Name).Sheets(1)
Application.DisplayAlerts = False
With Workbooks(ActiveWorkbook.Name)
.Sheets(2).Delete
.Sheets(1).Name = "Лист1"
.SaveAs (sDir & "/" & sName & ".xls"
End With
End Function
Sub Test_AddNewBook()
Call AddNewBook("Name", "C:"
End Sub
Номер ответа: 4
Автор ответа:
tip
Вопросов: 11
Ответов: 10
Профиль | | #4
Добавлено: 29.12.08 15:27
блин!!! точна!!! памоему с этого ВБА наченаю тупеть!!! Спасиба! всех с НГ.