Объект Workbook (элемент из семейства Workbooks)
1.ActiveSheet – Активный рабочий лист
2.FullName – Полное имя рабочей книги, включая путь
3.Name – Имя рабочей книги
4.Saved – Признак того, что состояние рабочей книги сохранено на диске (имеет логическое значение False, если в книге были сделаны изменения)
Объект Worksheet
1.Name – Имя рабочего листа
2.OnSheetActivate – Имя процедуры, вызываемой при активизации рабочего листа пользователем
3.Previous – Предыдущий рабочий лист
4.ProtectContents – Режим защиты содержимого ячеек рабочего листа
5.Visible Режим видимости рабочего листа (скрыт или показан)
Есть два способа использования свойств объектов: можно либо получить текущее значение свойства, либо изменить свойство (то есть задать новое значение для этого свойства). При изменении свойства необходимо указать сначала имя объекта, а затем имя свойства, использовав в качестве разделителя точку, затем следует оператор присваивания ( = ) и новое значение: Объект.Свойство = новоеЗначение
В этом выражении новое значение может быть константой или формулой, возвращающей нужное значение, и принадлежать к одному из трех типов:
1.Числовое значение. Например, при установлении размера шрифта может использоваться следующий оператор: ActiveCell.Font.Size = 14
2.Строка символов. Строковые значения заключаются в двойные кавычки. Вот пример изменения используемого шрифта: ActiveCell.Font.Name = "Courier New Cyr"
3.Логическое значение. Обратите внимание, что в VBA используется обозначение True и False, в отличие от функций рабочего листа, где используется обозначение ИСТИНА и ЛОЖЬ. Вот пример изменения начертания шрифта (применение курсива): ActiveCell.Font.Italic = True
Sub pr()
Dim s, s1, s2, s3, s4, s5, s6, s7, s8 As String
Dim n, i, n1 As Integer
s = InputBox("Введите строку")
s1 = InputBox("Введите символ")
n = 0
n1 = Len(s)
For i = 1 To n1 Step 1
s2 = Mid(s, i, 1)
If s2 = s1 Then
n = n + 1
End If
Next i
MsgBox n
End Sub
№ 25 Методы иерархических объектов Visual Basic for Application в Microsoft Office Excel.
Кроме свойств (Properties), объект имеет еще и присущие ему методы (Methods). Если свойство объекта описывает некоторое состояние этого объекта, то метод описывает действия, которые над ним можно выполнить. Например, в рабочем листе — объекте Worksheet — можно произвести перевычисление всех содержащихся на нем формул с помощью метода Calculate.
Синтаксис вызова метода отличается от синтаксиса ссылки на свойство объекта. Методам не присваиваются значения, они не сохраняются в какой-либо переменной. Все, что требуется при вызове метода — это сначала указать имя объекта, поставить точку в качестве разделителя, потом следует имя метода, а затем при необходимости могут следовать аргументы, указывающие, как должен выполняться метод.
Если аргументы вообще отсутствуют, то синтаксис вызова метода совпадает с ссылкой на свойство: Объект.Метод
Например, для сохранения рабочей книги может использоваться следующий оператор: ActiveWorkbook.Save
Если нужно, в скобках указывается список аргументов метода, причем скобки можно и не использовать. Объект.Метод(аргумент1, аргумент2, ...) или Объект.Метод аргумент1, аргумент2, ...
Например, объект класса Range может использовать метод Offset, позволяющий получить новый диапазон ячеек, смещенный относительно первоначального. При этом используется следующий синтаксис: диапазон.Offset(rowOffset,columnOffset)
где аргументы rowOffset и columnOffset определяют смещение по строкам и столбцам соответственно. Например, следующее выражение представляет собой значение, хранящееся в соседней справа ячейке от текущей активной: ActiveCell.Offset(0,1).Value
В данном случае метод Offset возвращает объект класса Range, и мы можем воспользоваться свойством Value для ссылки на значение этого объекта.
При указании фактических значений аргументов можно использовать не только их порядковое расположение в списке, но и определенные в VBA имена аргументов, что может сделать вашу процедуру понятнее и позволяет задавать значения аргументов в произвольном порядке, опуская при этом не использующиеся необязательные аргументы. Например, приведенное выше выражение можно записать в следующем виде: ActiveCell.Offset(columnOffset:=1).Value
Обратите внимание на то, что при этом для указания фактического значения аргумента используется оператор := , а не просто знак равенства.
Sub pr()
Dim str, str1 As String
Dim n, n1, n2 As Integer
Open "C:\1.txt" For Input As #1
Input #1, str
Close #1
n = Val(str)
Open "C:\2.txt" For Input As #2
Input #2, str1
Close #2
n1 = Val(str1)
n2 = n1 + n
Open "C:\3.txt" For Output As #3
Write #3, n2
Close #3
End Sub
№ 26 Методы объекта Workbook и семейства Workbooks.
ActivateАктивизирует рабочую книгу так, что ее первый рабочий лист становится активным.Workbook. Activate
AddСоздает новый объект для семейства Workbooks.
Add (Template)Template — задает шаблон, на основе которого создается новая рабочая книга. Допустимые значения: xlWBATChart, xlWBATExce14IntlMacroSheet, xlWBATExce14MacroSheet или xlWBATWorksheet.
Если аргумент Template опущен, то создается новая рабочая книга с количеством листов, заданных свойством SheetsInNew Workbook
ProtectЗащищает рабочую книгу от внесения в нее изменений.Protect (Password, Structure, Windows)
Password — строка, используемая в качестве пароля для защиты книги
Structure — допустимые значения True (защищена структура книги, т. е. взаимное расположение листов) и False (не защищена)
windows — допустимые значения True (защищено окно книги) и False (не защищено)
В следующем примере устанавливается защита для активной рабочей книги: ActiveWorkbook. Protect Password:= «ВинниПух»
UnprotectСнятие защиты с рабочей книги Unprotect (Password)Password — строка, используемая в качестве пароля для защиты листа
В следующем примере снимается защита с активной рабочей книги: ActiveWorkbook. Unprotect Password: = «ВинниПух «
CloseЗакрытие рабочей книги
OpenОткрытие существующей рабочей книги
OpenTextОткрытие текстового файла, содержащего таблицу данных
SaveСохранение рабочей книги
SaveAsСохранение рабочей книги в другом файле.SaveAs (Filename)Filename — строка, указывающая имя файла, в котором будет сохранена рабочая книга
В следующем примере активная рабочая книга сохраняется в файле с именем НоваяВерсия: ActiveBook. SaveAs Filename: = „НоваяВерсия“
SaveAsCopyСохранить рабочую книгу в другом файле, оставляя рабочую книгу в памяти с прежним именем.SaveAs (Filename, FileFormat)
Filename — строка, указывающая имя файла, в котором будет сохранена рабочая книга
В следующем примере активная рабочая книга сохраняется в файле с именем ЗапаснаяВерсия: ActiveBook. SaveAsCopy Filename: = „ЗапаснаяВерсия“
PrintPreviewПредварительный просмотр
PrintoutПечать содержимого рабочей книги