|
Call GetProblemSize
Call Initialize
Exit Sub
End Sub
Sub GetProblemSize()
Ncities = Range("DistMatrix").Rows.Count
ReDim Visited(Ncities)
ReDim Route(Ncities + 1)
End Sub
Sub Initialize()
Dim I As Integer
Route(1) = 1
Route(Ncities + 1) = 1
Visited(1) = True
For I = 2 To Ncities
Visited(I) = False
Next
TotDist = 0
End Sub
Синтаксис процедуры пользователя:
[Private/Public] Sub ИмяПроцедуры (Параметры)
<Тело процедуры>
End Sub
Элементы списка параметров имеют следующий вид: ИмяЭлемента As ТипДанных
7. Типы подпрограмм и их определения: определение и виды процедур. Примеры процедур разных видов. Логические фрагменты кода, которые выполняют определенную задачу, называются подпрограммами. В вба подпрограммами называют макросы, процедуры и даже функции. Функция – это подпрограмма, которая действует в пределах своего блока и возвращает только одно значение. Функции: 1)ф. пользователя 2) ф. модулей классов. Функция имеет следующий синтаксис:
[Private/Public] Function Имя функции(список параметров) As ТипДанных
<тело функции>
End Function
Тип данных для функции предназначен для определения типа и возвращения функцией зн-я
Чтобы создать функцию пользователя, надо: 1. если нет модуля Insert/Module 2. Insert/Procedure 3. в открывшемся окне выбрать переключатель “Function”, в поле Name ввести имя функции («Доход») 4. в этом же окне установить переключатель «общие», чтобы был тип – Public 5. Ок. Откроется окно редактора. Ввести параметры функции и код.
Option explicit
Option Base 1
Function Doxod (procent as double, platezh as variant, god as variant) as double
Dim i, j, n as integer, s as double
n=platezh.rows.count
s=0
for i=1 to n
s=s+platezh(i)/(1+procent)^((god(i)-god(1))/365)
next i
doxod=s
end fuction
Не закрывая окна View/Object Browser. Откроется окно просмотра объектов. В левом верхнем углу выбрать VBAProject и в окне Классы отобрать элементы текущего проекта. Выбрать модуль, в котором ваша функция. Затем в окне Компоненты отобрать все элементы, в том числе и функцию Доход. Щелкнуть правой кнопкой мыши на Доход и выбрать значение Свойства. Откроется окно «Параметры компонента», в нем ввести описание(назначение) функции. Закрыть окно и после этого ваша функция попадет в библиотеку стандартных функций Excel.
8. Объявление переменных. Объявление переменных в модулях и процедурах. Область действия переменных и процедур. Пример передачи в процедуру аргументов.
Рекомендуется заранее объявлять все переменные, которые будут использоваться в процедурах. Оператор Dim позволяет объявить все переменные и массивы.
Dim I As Integer, j As Integer, k As Integer
Чтобы не забывать объявить переменные Tools/Options/ вкл Editor, где установить флажок Require Variable Declaration.
Option Explicit – общая область. Этот оператор будет контролировать описание переменных. Существует очень важный тип переменных, которого в VB не было. Это переменные объекта. Dim A As Object. Частный случай: Dim A As Range. Например, мы хотим обратиться к диапазону ячеек в течение процедуры. D
Dim SRange As Range
Set SRange=ActiveWorkBook.WorkSheets(“Продажи”).
Range(“SalesRange”)
SRange.Font.Size=14
Ключевое слово Set используется только при присвоении значения объектной переменной.
Для переменных определяется область видимости. Переменные могут быть: глобальные (для объявления используется Public) и локальные (используется оператор Private, Dim). Переменная типа Public – переменная уровня модуля, Dim – уровня процедуры. Переменная, определяемая в модуле оператором Dim, может быть переопределена этим же оператором внутри процедуры, принадлежащей этому модулю.
Передача в процедуру аргументов. Можно передавать аргументы (имя, фамилию) из процедуры Main в процедуру DisplayName. Тогда процедура Main называется главной, а DisplayName – вызываемой. В этом случае переменная FirstName и LastName не объявляются переменными уровня модуля, а объявляются как локальные переменные процедуры Main.
Sub Main ()
Dim FirstName As String, LastName As String, I As Integer
For i=1 to 50
FirstName=Range(“Names”).cells(i, 1)
LastName= Range(“Names”).cells(i, 2)
Call DisplayName
End Sub
Дата добавления: 2015-11-14; просмотров: 53 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Введение в систему программирования VBA. Объектная модель Excel, основные объекты Е. Краткая их характеристика. | | | Sub DisplayName |