ОП1 Mod ОП2 – остаток от деления на целое.
ОП1^ОП2 – введение в степень.
2. Операции отношения: <, >, <=, >=, <> не равно, =
ОП1 Is ОП2 – сравнение двух операторов, содержащих ссылки на объекты. (проверяется, является ли значение пустым для объектов с NOOL)
ОП1 Like ОП2 – сравнение двух строковых выражений.
3. Логические операции: and – логическое умножение (получаем 1, если оба операнда равны 1, а иначе всегда 0), or – логическое сложение (получаем 1, если хотя бы один операнд равен 1, а 0, если все операнды равны 0), xor – исключающее или (возвращает 1, если один оператор возвращает 1); Not – логическое отрицание.
4. Другие операции:
Строка 1 & Строка 2 – сложение строк (конкатенация).
Операции выполняются в следующей последовательности:
1. вызов функций и скобки; 2. возведение в степень (^); 3. - – смена знака; 4. умножение (*), деление (/); 5. деление целых чисел нацело (\); 6. mod; 7. сложение (+), вычитание(-); 8. операции сравнения (<,>,<=, >=, <>, =); 9. логическое отрицание (not); 10. логическое умножение (and); 11. логическое сложение (or); 12. исключающее или (xor).
Имя переменной длиной не более 255 символов. Первый символ – буква, не может быть символов V,, #, $, %, & - это специальные символы.
Перенос строки – символы «V_» в конце строки обеспечивают то, что последняя строка является продолжением следующей (до семи строк – 1024 символа). Если разбиваем текстовую константу, в начале второй строки ставим & и текст в кавычках «...».
8.8. Встроенные функции VBA
Встроенные функции используются для облегчения работы, чтобы не писать собственные. Они имеют аргументы, в качестве которых могут быть переменные, константы и выражения.
Обычно они возвращают значение (не массив), которое может иметь тип Variant или String, но в некоторых, если к имени справа добавить $: Chr$; Lcase$; Left$… Они бывают математическими, строковыми, даты и времени (Date()), преобразования типов данных [CSTR()] файловой системы (FILELEN() – определяет длину файла в байтах).
8.9. Функции пользователя
В отличие от процедуры, они возвращают одно вычисленное значение, но могут участвовать в выражениях оператора присваивания.
Function <имя процедуры> (аргументы) As <type>
Тело процедуры
End Function
Примеры:
Sub Proc_A()
S as Single: Dim LL as Single; Dim HH as Single
LL=12: HH=23: S=Sq(LL;H)/2+1200
End Sub
Function Sq(H as Single; L as Single) as Single
Sq=H*L: End Function
8.10. Операторы языка VBA
8.10.1. Оператор присваивания
Оператор присваивания имеет вид: <var>=<formula>
Это самый распространённый оператор.
Примеры:
Place=”d:\windows\system”
File = “Game Tree. Exe «
Student_Card(100).Group=133
8.10.2. Оператор комментариев
Это пояснение к программе. Начинается в строке с произвольного места программы символом ‘.
8.10.3. Процедуры
Программные модули VBA состоят из процедур – это минимальный модуль в составе прикладной программы на языке VBA.
У них стандартное оформление:
Sub <имя - процедуры> (аргументы)
….
Тело процедуры (операторы)
….
End Sub
Оператор Sub – объявляет процедуру, задает имя и указывает состав аргументов, передаваемых при вызове процедуры из программы. Ему всегда соответствует свой оператор End Sub.
В программе могут использоваться процедуры других рабочих книг. Для этого задают ссылки. Если модуль на рабочем месте, то выполняются команды Сервис/ссылки и выбирают нужный из списка. Для установки новых ссылок щелкнуть по кнопке. Пролистать и указать диск, каталог и файл, содержащий процедуры, на которые можно ссылаться из данного модуля.
1. Вызов процедуры осуществляется по имени: Proc_B
2. Если он в другой процедуре другого модуля, то [Модуль#].Proc_B
3. Из другого приложения:
[RW1.XLS].[Модуль #].Proc_B
Если не хотим, чтобы к процедуре обращались из других модулей, то объявляют ее так :
Private Sub Proc_B ()
….
End Sub
Если не хотим, чтобы к модулю обращались из других рабочих книг, то указывают:
Option Private Module
Если в момент вызова процедуры передаются какие–то величины, либо значения при её выполнении, определяют список аргументов, который содержит данные обмена с вызывающей процедурой. В теле процедуры могут быть объявлены внутренние переменные, они никуда не передаются, а потому действуют только внутри процедуры.
Объявление аргументов в заголовке процедуры имеет вид:
Sub Proc_ B (Val1 As Single; Val2 As Date;…)
Если аргумент необязательный, т. е. может не задаваться при вызове процедуры, указывается ключевое слово Optional.
Пример
Sub SquarPr (L As Single; H As Single; S As Single; Optional F )
If IsMissing(F) Then F=100 ‘IsMissing проверяет наличие аргумента F, если F не задано, по умолчанию F присваивают 100.
S=L*H : End Sub
Вызов: Sub Proc_A()
I способ: Dim Sq as Single
SquarPr 12;23;sq ‘ могут быть через,- зависит от установки.
End Sub
II способ: Sub Proc_A()
Dim Sq as Single: Dim LL as Single; Dim HH as Single
LL=12: HH=23: SquarPr LL HH Sq
End Sub
III способ: Sub Proc_A()
Dim Sq as Single: Dim LL as Single; Dim HH as Single
LL=12: HH=23: SquarPr L:=LL; H:=HH; S:=Sq
End Sub
При завершении работы вызываемой процедуре и передаче управления вызывающей процедуры происходит потеря значений переменных, объявляемых в вызываемой процедуре. Для предотвращения этого сохраняемые переменные смогут объявить:
Static <var> As <type>
Обычно при вызове процедуры происходит передача адреса, по которому находится значение. Процедура может изменить значение аргумента. Для блокировки изменения значения аргумента следует передача величин значением. Для этого выполняют либо модификацию заголовка процедуры, либо передача аргументов в виде формул.
Для модификации:
Sub SquarPr (ByVal L As Single; ByVal H As Single; S As Single)
S=L*H: L=10: H=20: End Sub
Для преобразования аргумента в виде формулы имя переменной заключают в круглые скобки.
Пример
Sub Proc_A()
Dim Sq as Single: Dim LL as Single: Dim HH as Single
LL=12: HH=23: SqarPr L:=(LL); H:=(HH); S:=Sq
End Sub
Если хотим передать массив по ссылке (чтобы под него один раз выделялось место, а не в каждой процедуре), то перед именем массива в заголовке процедуры пишем не ByVal, а ByRef. В этом случае изменение значений элементов массива в вызванной процедуре, приведет к изменению их значений и в вызывающей процедуре. Это экономит оперативную память.
8.10.4 Операторы управления
К операторам управления относятся 2 типа операторов:
1. перехода и выбора (Goto, If – Then – Else и Select Case);
2. повтора (For – Next, For Each, Do – Loop, While – Wend).
Оператор перехода имеет вид:
Goto метка, где метка – это цифровая комбинация, стоящая ещё и перед оператором, на который нужно перейти. В современных программах его стараются не использовать.
Условный оператор If относится к операторам выбора.
У него несколько конструкций. Он может быть в виде простой или блочной структуры.
1. If условие Then [инструкция] [Else инструкция Else] – простая структура If (в [] заключена необязательная часть оператора).
Примеры:
А) If Сумма > 1000 then Скидка = 0.05 Else Скидка = 0
Б) If Сумма > 1000 then Скидка = 0.05
2. If Условие then [инструкция ] [Else (инструкция Else) End if]
Примеры:
А) If Сумма> 1000 then Скидка = 0.05 Else скидка = 0 End If
Б) If сумма >1000 then Скидка = 0.05 End If
3. If условие1 then
[блок инструкций 1]
ElseIf Условие2 then
[блок инструкций 2] – блочная структура If
Else [блок инструкций Else] End If
Блок - это последовательность операторов одной строки, разделенная “двоеточием”.
Пример. Определение, какому интервалу принадлежит число:
X= InputBox (“Введите число”)
If X >0 and X<=1 then MsgBox “Число из интервала [0,1]”
ElseIf X >1 And X< =2 then MsgBox “Число из интервала (1,2]”
Else MsgBox “Число либо отрицательное, либо>2” : End If
Разновидность простого оператора имеет вид:
If <выражение> Then <оператор>
Если условие истинно в любой конструкции оператора, то выполняется простой или составной оператор, следующий за Then. Рассмотрим пример.
Пример:
If AvgPrice>12000 Then
DiffPrice = Full(234, 45600)
ElseIf AvgPrice>24000 Then
DiffPrice = Full(12000, 45000)
ElseIf AvgPrice>36000 Then
DiffPrice = Full(24000, 50000)
Else DiffPrice = Full(36000, 70000
End If
Оператор выборки Select Case также относится к операторам перехода. Он используется реже оператора If.
Он имеет вид:
Select Case <величина>
Case <сравнение 1>
<блок операторов 1>
Case <сравнение 2>
<блок операторов 2>
Case Else
<блок операторов Else>
End Select
Пример:
Select Case Demse
Case Demse 21
Dem=21
Case Demse 22;25;28
Dem=31
Case Demse 45 To 48
Dem=41
Case Else
Dem=51
End Select
Есть ещё функции выбора, которые возвращают одну из альтернатив:
1. IIf ( Expr, Truepart, FalsePart)
Expr – проверяемое выражение.
Truepart – значение или выражение, возвращаемое, если Expr – истина.
FalsePart - значение или выражение, возвращаемое, если Expr – ложь.
2. Choose (index, chooce1[,chooce2…] возвращает значение, выбранное из списка параметров index, лежит в интервале [1 … число элементов в списке].
3. Switch (Expr1, value1, Expr2, value2…)
expr – выражение типа variant.
value – возвращаемое значение, если соответствующее expr – истина.
Пример 2:
Число = InputBox(«Введите целое число»)
Select Case Число
Case 1: MsgBox “Число равно 1”
Case 2, 3: MsgBox “Число равно 2 или 3”
Case 4 to 6: MsgBox “Число от 4 до 6”
Case Is>=7: MsgBox “Число не менее 7”
End Select
Пример 3.
Идентификация нажатой клавиши.
Private Sub UserForm_KeyDown (byval keykode As MsForm. _ ReturnInteger, byval Shift As Integer)
Select Case KeyKode
Case vbkey 0: MsBox “Нажали 0”
Case vbkey 1, vbkey 2: MsBox “Нажали 1 или 2”
Case vbkey 3 to vbkey 9, vbkey A to vbkey z: MsBox “Нажали цифру от 3 до 9 или буквенную клавишу”
Case Else: MsBox “Нажата не буква и не цифра”
End Select
End Sub
8.10.5. Операторы повтора
Оператор цикла For_Next – это наиболее широко используемый оператор, позволяющий организовать циклический процесс.
В этом операторе заранее известно число повторений цикла. Заданы начальное, конечное значения параметра (переменной) цикла и шаг изменения параметра цикла. Он имеет вид:
For <переменная цикла> = <начало> То <конец> [Step<шаг>]
<блок операторов 1> ‘тело цикла
[Exit For] ‘прекращение цикла по внутреннему условию
<блок операторов 2> ‘– повторяется определённое число раз
Next <переменная цикла>
Пример 1: Суммирование элементов массива:
Dim A As Variant
A = Array (1, 4, 12, 23, 34, 3, 24)
S = 0
For i = LBound (A) to UBound (A)
S = S+A(i)
Next i
Пример 2: Нахождение произведения первых n натуральных чисел.
Sub Factor ()
Const n as Integer=20, Fact as Integer=1
Dim i as Integer
For i=1 to n
Fact = Fact*i
Next i
MsgBox Format (Fact, “############”)
‘ Будет выведено
End Sub
Пример 3: Суммирование элементов выделенного диапазона
With Selection
n=.Rows. Count
m=.Column. Count
End With : S=0
For i=1 to n
For j=1 to m
S=S+selection. Cells(i, j).value
Next j
Next i
with Section. End(xlDown) ‘ Здесь под I столбцом выделенного
.offset (1,0).value = “Сумма” ‘диапазона выводится «сумма»,
.offset (1,1).value = S ‘а в соседней клетке значение S
End With
Оператор Do _Loop является вторым оператором, позволяющим организовать циклический процесс.
Он создаёт логически управляемый цикл. Имеет 4 модификации:
а) условие True в начале цикла
Do [While <условие>] – выполняется пока условие истинно
[<блок операторов>]
[Exit Do]
[<блок операторов>]
Loop
б) условие True в конце цикла:
Do
[<блок операторов>]
[Exit Do]
[<блок операторов>]
Loop [While <условие>]
в) условие False в начале цикла:
Do [Until <условие>] – выполняется пока условие
[<блок операторов>] не станет истинным
[Exit Do]
[<блок операторов>]
Loop
г) условие False в конце цикла:
Do
[<блок операторов>]
[Exit Do]
[<блок операторов>]
Loop [Until <условие>]
Пример 1:
Option Explicit
Sub Do_Rnd()
Dim a As Single: Dim I as Integer
Randomize
Do While True
a = Rnd()
Debug. Print a ‘печать случайного числа
If a>0.99 Then Exit Do
Loop
End Sub
Пример 2: Последовательное отображение имен файлов с расширением. sys на устройстве С:
Файл = Dir (“C:\*.sys”)
Do while <Len (Файл)
MsBox Файл – Без Exit!
Файл = Dir
Loop
Пример 3: Суммирование всех вводимых чисел.
S=0: Do
x=InputBox (“Введите число”)
If Not IsNumeric (x) then Exit Do
S=S+x
Loop
Пример 4: Код, ожидающий правильного ввода пароля
Do : Пароль = InputBox(“Введите пароль”)
Loop Until Пароль = “Привет”
Следующей разновидностью оператора цикла является оператор While _ Wend.
Его невозможно прервать – нет Exit Do. Он имеет следующую конструкцию:
While <условие>
<блок операторов>
Wend
Пример: Бросается игральная кость до выпадения 6 очков.
Dim Бросок As integer, Очки As integer
Randomize
Очки = Int(6*Rnd())+1
Бросок = 1
While Очки<6
Бросок = Бросок + 1
Очки = Int (6+ Rnd ())+1
Wend
MsgBox “Победили на броске” & CStr(Бросок)
Циклический оператор For Each _ Next относится к операторам объектного типа, т. е. применяется к массивам и наборам элементов. Имеет вид:
For Each <элемент>In<набор>
[<блок операторов >]
[Exit For] ‘– используется для прерывания цикла
[<блок операторов >]
Next [<элемент>]
Пример 1: Суммирование элементов массива
Dim A As Variant
Dim b, s as Integer
A = Array (1, 4, 12, 23, 34, 3, 23)
S = 0
b=InputBox (" введите с клавиатуры значение для b ")
For Each b in A
S=S+b
Next b
Пример 2:
S = 0
For Each с in Selection. Cells
S = S+c. value
Next c 'Из выделенного диапазона
MsgBox “S=”&CStr(S)
Пример 3: Работа с семейством рабочих листов – удаление из книги рабочего листа Тест.
For Each Лист in Worksheets
If Лист. Name = “Tест” then
Лист. Delete
End If
Next Лист
Пример 4: Работа с семейством ячеек в диапазоне А1 : С4, ячейки с положительными значениями окрашиваются в синий цвет, а с неположительными – в красный.
With Ячейка
if. value <=0 then
.Interior. ColorIndex =3
else. Interior. ColorIndex =5
End if
End With
Next Ячейка
Пример 5: Оператор With избавляет программиста от использования большого количества повторений имени одного и того же объекта или работе с его свойствами и методами. Происходит структурирование кода, что делает его более прозрачным.
1 вариант:
With Range (“A1”)
.value = 3
.Font. Italic = True
End With
2 вариант:
With Range (“A1”)
.value = 3
With. Font
.italic = True
.size = 12
.Bold = True
.Color = RGB(255, 30, 255)
End With
End With
8.11. Встроенные диалоговые окна
8.11.1. Окно ввода информации
Встроенных диалоговых окон существует 2 типа: окно сообщений и окно ввода. Окно сообщений выводит простейшую информацию (MsgBox), а окно ввода (InputBox) обеспечивает ввод информации.
Функция InputBox – окно с двумя кнопками ОК и Cancel, строкой сообщения и полем ввода. Рассмотрим оператор, выдающий это окно на экран.
InputBox (Prompt[,Title] [,Default] [,xPos] [,yPos] [,Helpfile, Context]), где:
Prompt - строковое выражение, отображаемое в строке заголовка окна
Title – строковое выражение отображаемое в строке заголовка окна.
Default - строковое выражение отображаемое в поле ввода по умолчанию, если не ввести другое.
xPos – расстояние по горизонтали между левой границей ДО и левым краем экрана (если нет, то по центру горизонтали)
yPos - расстояние по вертикали между верхней границей ДО и верхним краем экрана (если нет, на 1/3 высоты экрана)
Helpfile – адрес файла-справки о ДО, а Context – номер соответствующего раздела в системе.
Пример: Option Explicit
Sub Msg_Inp()
Dim Response As Integer
Dim Message As String
Dim Default As String
Dim Title As String
Dim Help As String
Dim Style As Integer
Dim Ctxt As Integer
Message = «Введите Фамилию, Имя и Отчество студента» ‘ строка-‘сообщение
Title=”Пример окна для ввода” ‘Заголовок окна
Default = “” ‘текст по умолчанию
Responce = InputBox (Message; Title; Default; 100; 100):End Sub
![]() |
Рис.61. Окно ввода данных
8.11.2. Встроенные диалоговые окна для обмена сообщениями
Они бывают нескольких типов.
А) Простое окно-сообщение
Пример: MsgBox (“Строка сообщения”)
Б) Функция MsgBox – выводит на экран ДО с сообщением, устанавливая режим ожидания нажатия кнопки пользователя.
MsgBox ((Prompt[,Buttons] [,Title] [,Helpfile, Context])
Prompt – строковое сообщение в ДО
Buttons – числовое выражение, представляющее сумму значений, которые указывают число и тип отображаемых в ДО кнопок: 0 – ОК+отмена; 2 – стоп + повтор + пропустить; 3 – да + нет + отмена; 4 – да + нет; 5 – повтор + отмена.
Остальные пункты команды, как в InputBox.
Кроме кнопок можно отображать значки:
16 – – белый на сером;
48 – – черный на светло сером;
Перед рисунком указан код этих значков.
Пример. Использование окна с кнопками Да, Нет, Отмена.
Sub Три_кнопки ()
Dim Сообщение As String: Dim Кнопкa As Integer
‘В Переменной сообщение задаётся структура ДО
Сообщение = vbYesNoCancel + vbQuestion + vbDefaultButton1
‘Кнопка возвращает число при нажатии кнопки
Кнопка = MsgBox (“Выберите Да, Нет, или Отмена?”, Сообщение, “Ещё пример”)
‘В зависимости от полученного значения будет одно из сообщений из Select Case:
Select Case Кнопка
Case vbYes: MsgBox “Выбрали Да”,vbInformation, “Еще пример”
Case vbNo: MsgBox “Выбрали Нет” vbInformation, “Еще пример”
|
|
End Select
End Sub
Пример. Использование в программе.
Sub Msg_Priim()
|
Randomize
a=rnd()
MsgBox “Значение случ. числа” &cstr(a) Рис. 62. Окно вывода результата
End Sub
Пример. Ввод значения.
x= InputBox(“Введите х”, “Пример”) : y=x^2
Для вывода в окне командной кнопки используются коды, приведённые в табл. 6.
Таблица 6
Коды командных кнопок и пиктограмм
Код | Константа | Описание |
0 1 2 3 4 5 | vb OK Only vb OK Cancel vb AbortRetryIgnore vb YesNoCancel vb YesNo vb RetryCancel | Коды командных кнопок: OK OK, Отмена Прекратить, Повторить, Игнорировать Да, Нет, Отмена Да, Нет Повторить, Отмена |
0 256 512 | vbDefaultButton1 vbDefaultButton2 vbDefaultButton3 | Коды активности по умолчанию Активная первая Активная вторая Активная третья |
16 32 48 64 | vbCritical vbQuestion vbExclamation vbInformation | Коды пиктограмм Важное сообщение Предупредительный запрос (справка) Предупредительное сообщение Информационное сообщение |
0 4096 | vbApplicationModal vbSystemModal | Коды модальности Программное модальное описание (требуется обязательный ответ, работа приложения приостанавливается) Системное модальное описание (требуется обязательный ответ – работа всех приложений приостанавливается) |
Рассмотрим пример использования этих кодов (рис. 63).
Пример. Использование кодов кнопок.
Option Explicit
Sub Msg_Priim()
Dim Response As Integer:Dim Msg As String
Dim Title As String
Dim Help As String
Dim Style As Integer
Dim Ctxt As Integer
Msg= «Вы хотите продолжить?»
Style = 35’vbYesNoCancel+ vbDefaultButton1+ vbQuestion
Title=”Пример окна сообщения” ‘ (Заголовок окна)
Help = “DEMO. HLP” ‘Имя файла-подсказки
Ctxt = 0 ‘Номер контекста внутри файла-подсказки
Response = MsgBox ( Msg; Style; Title; Help; Ctxt ) ‘ присвоение
‘ переменной кода ответа
End Sub
Они обеспечивают ввод и редактирование данных файлов и таблиц. Для создания ДО выполнить команду:
Вставка/ Макрос/ Диалог – тип вставляемого листа.
На экране есть панель инструментов Формы для размещения и настройки элементов окна и основа для построения ДО пользователя.
![]() |
Рис. 63. Окно вывода с кнопками
8.11.3. Диалоговые окна пользователей
Состав пиктограмм панели инструментов Формы имеет вид, приведённый в табл. 7.
В диалоговом окне могут размещаться элементы произвольного вида, которые сознают наборы объектов. Доступ к конкретному элементу – по имени набора и имени или порядковому номеру элемента внутри набора.
Метки – не могут редактироваться пользователем в процессе работы с диалоговым окном, но могут изменяться программным путем с помощью свойства Caption объекта Labels()
Пример. Sheets(“<имя_листа_диалога>”). Labels (“<имя_объекта_метки>”). Caption = “строка_текста”
Поле ввода – является многострочным, содержит текст, который можно корректировать. Поле ввода входит в набор EditBoxes(), его можно редактировать и программным способом.
Пример. Sheets(“<имя_листа_диалога>”). EditBoxes (“<имя_окна>”). Text = “строка_текста”
Таблица 7
Перечень пиктограмм
Вид | Название вида |
Метка (создание текстовых вставок в окне) | Label |
Поле ввода текста | EditBox |
Рамка группы (обеспечение элементов окна) | GroupBox |
Командная кнопка (может быть назначена процедура или макросы) | CreateBatton |
Поле ввода со списком (комбинированное окно) | Combination List Edit |
Поле ввода с раскрывающимся списком | Combination Drop_Down Edit |
Редактор органов управления (свойства объекта) | Control Propites |
Переключатель координатной сетки | Toggle grid |
Флажок (контрольный индикатор) | Check Box |
Переключатель (кнопка выбора) | OptionBatton |
Окно списка | ListBox |
Раскрывающийся список (выпадающее окно) | Drop_Down |
Линейка прокрутки | ScrollBar |
Регулятор счетчика (спиннер) | Spinner |
Редактор кода программы | EditCode |
Выполнение диалога | RunDialog |
Рамка группы – обеспечивает объединение нескольких элементов ДО. Он изображается в первую очередь, а за тем в него размещают новые элементы. Для задания строки текста в новой строке рамки программным путем, используется его свойство Caption.
Флажок - обеспечивает аддитивный выбор, имеет свойство Value (значение True или False) и образует набор CheckBoxes().
Выбран не выбран
Кнопка переключателя – обеспечивает альтернативный выбор из списка взаимоисключающих опций. Образуют набор OptionBattons () Свойство Value имеет значения True или False - не выбрана кнопка.
Окно списка – предоставляет для выбора список значений, при этом редакция списка невозможна. Список формируется только программным путем. Он может быть организован с помощью свойств объекта:
а) ListFillRange – ссылка на диапазон ячеек электронной таблицы, содержащая значения элементов списка.
б) List() – перечисление элементов списка, непосредственно, замена старого списка новым целиком.
Раскрывающийся список – подобен окну списков, но входит в набор DropDowns()
Поле ввода со списком – объединяет окно списка и окно редактирования. При выборе элемента списка он автоматически появляется в окне редактирования, где его корректируют (здесь два различных окна).
Поле ввода с раскрывающимся списком – представляет собой комбинацию выпадающего списка, элементы которого редактируются.
Линейка прокрутки – создаёт вертикальную или горизонтальную линейку прокрутки. Value содержит положение ползунка – число, доступ к линейкам через набор ScrolBars(). Свойства Min и Max – это диапазон значений, а свойства LargeChange и SmallChange содержат величину изменения Value.
Регулятор счетчика – аналогичен линейке прокрутки, но нет свойства LargeChange.
ЗАКЛЮЧЕНИЕ
Если был внимательно изучен весь материал и проработан на компьютере, то вы должны были освоить основные разделы для работы с текстовым редактором, электронными таблицами и базой данных. Освоение пакета повысило ваш уровень работы с компьютером. Изучение операторов языка программирования VBA дало вам умение использовать эти операторы при написании программ, создании собственных модулей для расчётов в EXCEL.
ЛИТЕРАТУРА
Основная литература
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 |




