Private Sub cmdAdd_Click()



With Application.Workbooks

Add

kol =.Count 'Определяем кол-во открытых книг

End With

lblKol1.Caption = kol 'Вывод значения Kol на форму

NameBook = Application.ActiveWorkbook.Name

lblN.Caption = NameBook

End Sub

Private Sub cmdYdl_Click()

kol = Application.Workbooks.Count 'Определяем кол-во открытых книг

If kol > 1 Then

With Application.Workbooks(2)

Close

End With

Else

MsgBox ("Эту книгу удалять нельзя!!!")

End If

lblKol1.Caption = kol 'Вывод значения Kol на форму

NameBook = Application.ActiveWorkbook.Name

lblN.Caption = NameBook

End Sub

 

Private Sub UserForm_Initialize()

 

Me.Width = 250 'Ширина формы

Me.Height = 100 'Высота формы

Me.Caption = "Test v.5.1." 'Заголовок формы

kol = Application.Workbooks.Count 'Определяем кол-во открытых книг

lblKol1.Caption = kol 'Вывод значения Kol на форму

NameBook = Application.ActiveWorkbook.Name

lblN.Caption = NameBook

End Sub

 

Из всего написанного следует отметить оператор With...End With, который применяется для сокращения кода. Чем меньше обращений к методам и свойствам объектов через точку тем программный код выполняется быстрее. Об этом нужно помнить, особенно когда такие коды выполняются в цикле.

Запустим данный пример и нажмём кнопку "Добавить книгу" и получим результат как на рис.5:

Рис.5. Пример работы методов ADD и Close для коллекции Workbooks.

На рисунке показано, что при запуске программы открывается книга"test.xls" (1). Если нажать кнопку "Добавить книгу" появиться книга "Книга1.xls" и станет активной(2). Если нажать кнопку "Удалить книгу", то книга, активная на данный момент будет удалена. Если открыта одна книга закрываться книга не будет.(Это сделано чтобы наша программа не повисла.)

Следует отметить, что для получения имени активной книги был применён код:


Дата добавления: 2015-12-17; просмотров: 1; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!