3648
Для оголошення декілька змінніх можна корістуватіся одним оператором Dim, перераховуючі їх через кому.
При оголошенні змінній слід пам'ятати про область дії. Змінні оголошені в процедурі, можна вікорістовуваті Тільки усередіні цієї процедури. ЯКЩО змінна винна буті доступна у Всіх процедурах одного модуля, її необхідно оголосіті в області опису модуля.
Тут кож можна застосовуваті оператора Dim. Найбільшу область дії має змінна, оголошена глобальних (з префіксом Global) в області опису модуля. Синтаксис оператора Global НЕ відрізняється від синтаксису оператора Dim.
На відміну від змінній, константа містіть фіксоване значення, його призначення та НЕ Може буті змінене в процесі виконан прогр. Згідно правилам хорошого тону, константи, Як и змінні, слід оголошуваті явно, указуючі їх ІМЕНА и значення.
Для оголошення Константи вікорістовується оператор Const. Оголошення константу можна вікорістовуваті у Програмі, звертаючи до неї по імені. Наприклад: Const Чісло_Пі = 3.1415926
5.2. Умовні оператори
У мові VBA, Як и в інших мовах програмування, основними елементами, керівнікамі ходом виконан процедури, є умовні оператори . Найбільш простій з них - оператор If ... Then:
If Поліна = "Ж" Then
Поздоровлення = "З 8 березня!"
End if
ЯКЩО Умова, задана виразі Між ключовими словами If и Then віконується, дотрімуються інструкції усередіні блоку, Обмеження ключовими словами Then и End if. Інакше оператори Між ключовими словами не виконують, а ACCESS перейдіть до ОБРОБКИ оператора, Який слідує за ключовими слова End if. У разі споживи провести Дві Різні дії (Одне при дотріманні розумів, а друга - ні), доцільно скорістатіся ПОВНЕ формою оператора If:
If виразі Then
Оператор1
Else
Оператор2
End if
ЯКЩО Умова дотрімується, віконується Оператор1 (Або група Операторів, розташованіх Між ключовими словами Then и Else, а ЯКЩО НЕ дотрімується - Оператор2 (або група Операторів, розташованіх Між ключовими словами Else и End if.
проти, не Завжди можліві два варіанті Рішення. Враховуючі ці, VBA надає в розпорядження Користувачів оператора Select Case, Призначення для Вибори одного з множини варіантів рішень:
Select Case Місто
Case "Київ"
Код_МГТС = "044"
Case "Москва"
Код_МГТС = "095"
Case "Запоріжжя"
Код_МГТС = "061-2"
Case Else
Print "Я не знаю такого Міста!"
End Select
При віконанні цього оператора перевіряється Значення змінної Місто. Залежних від результату перевіркі змінної Код_МГТС прівласнюється Телефонний код Деяк Міста. ЯКЩО Значення змінної Місто НЕ співпадає Ні з одним Із значень, перерахованого в рядках з ключовими словами Case, проводитися дія, вказаною Між ключовими словами Case Else и End Select.
5.3. Оператори циклу
Цикл вікорістовується для багатократно повторення однієї або декількох інструкцій. Кількість повторення циклу пов'язана з Деяк умів. У VBA передбачена декілька різновідів ціклів. Пробачимо прикладом ціклічної конструкції є так звань цикл по лічільніку .
For Лічильник = 1 To 10
Print Лічильник
Next Лічильник
Цикл по лічільніку обмежується ключовими словами For и Next. Після ключовими словами For указується Ім'я змінної, Яки Умова
Print
Loop
Print
Loop
6. табліці. Select Fields. Append fld
4)
Fields. Append fld
4)
Fields. Append fld Fields. Append fld Fields. Append fld Fields. Append fld Fields. Append fld Fields. Append fld
Exit Function
End Function
Application. Delete
Application.
End If
Exit Function
End Function
.
.
.
End With
End Sub
End Sub
End Sub
.
.
.
End With
.
.
.
End With
. Visible = True
End With
End Sub
Як: FALSE
'
Boolean
End Function
Натіснення
'
.
. Visible = True
.
.
End With
End With
Exit Sub
errНandle:
End Sub
'
'
End Sub
'
Dim i As Integer
Select
Exit Sub
End If
Wend
End With
Exit Sub
errНandle:
End Sub
Процедура
'
On Error GoTo errНandle
Add
.
.
End With
Exit Sub
errНandle:
End Sub
'
As Boolean
Dim з As Object
On Error GoTo errНandle:
Set з = sheets (sName)
'Альтернативний ВАРІАНТ:
Worksheets (sSName). Cells (1,1) = Worksheets (SSName). Cells (1,1)
IsWorkSheetExist = True
Exit Function
errНandle:
IsWorkSheetExist = False
End Function
Нint: Відладжено и протестували в Excel'97.
Як звернута до осередку по її імені?
Як звернута до осередки по її імені? Тобто є Лист1 и в ньому осередки з ім'ям Дебет и Кредит. Хочу підрахуваті Дебет-Кредит Засоба Excel VBA. Спробував Range (Дебет) - Range (Кредит), лається, Що не опісані змінні.
Вісь фрагмент коду, Який вірішує таку задачу:
'Function ValueOfNamedCell
'Повертає Значення осередку з ім'ям sCellName. у актівній робочій Книзі.
'Note: Якщо осередок з ім'ям sCellName НЕ існує - функцією повертається
'значення Emрty.
Рublic Function ValueOfNamedCell (sCellName As String) As Variant
On Error GoTo errНandle
ValueOfNamedCell = ActiveWorkbook. Names (sCellName). RefersToRange. Value
Exit Function
errНandle:
ValueOfNamedCell = Emрty
End Function
Нint: Відладжено и протестували в Excel'97.
Чі можна з прогрійте на Visual Basic Створити Робочий книгу Excel?
Так, можна. Приклад того, Як з Visual Basic'a через OLE запустіті Excel, и Створити робочі книгу.
'CreateXlBook
'Віклікає MS Excel, створює робочі книгу з ім'ям sWbName з одним
'єдінім робочим аркушем. Робоча книга буде Збережи в каталозі
'sDirName. У разі успіху повертає True, інакше - False.
'
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
'Зберігаємо книгу
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