Для чого потрібна процедура Sub?  h2>
 Якщо
Ви вже читали моє пояснення процедури Function, то Ви зрозумієте Sub ще швидше!
Загалом так, Sub це те ж саме, що й Function, тільки вона не повертає
значення, а виробляє будь-яка дія. Наприклад виведення на екран повідомлення
або маніпулювання декількома властивостями. Наприклад MsgBox. Це теж
підпрограма. Наприклад:  p>
 Msgbox
( "Привіт!",, "Тема")  p>
 Msgbox
- Це ім'я підпрограми. А "Привіт!" і "Тема" це
передаються значення. Тобто підпрограма Msgbox виводить на екран вікно з текстом
"Привіт!" і заголовком "Заголовок".  p>
 Тепер
припустимо, що Вам потрібно, щоб ваша програма вирізала з переданих строк
всі задані символи (візьмемо мій приклад з "Практики"):  p>
 Sub
Main ()  p>
 оголошуємо
змінну для рядка  p>
 Dim
Stroka As String  p>
 оголошуємо
змінну для символу, який треба вирізати  p>
 Dim
Symbol As String  p>
 оголошуємо
змінну для місця знаходження символу  p>
 Dim
ReturnNumber As Integer  p>
 отримуємо
рядок, за замовчуванням стоїть рядок  p>
 "There is nothing
impossible! " p>
 Stroka = InputBox ( "Введіть рядок",, "There is nothing
impossible! ")  p>
 отримуємо
символ, за замовчуванням стоїть символ "i"  p>
 Symbol
= InputBox ( "Введіть символ",, "i")  p>
 запускаємо
цикл  p>
 Do
 p>
 за допомогою InStr отримуємо місце розташування
шуканого символу  p>
 якщо воно дорівнює нулю, залишаємо цикл  p>
 ReturnNumber = InStr (1, Stroka, Symbol): If _  p>
ReturnNumber = 0 Then Exit Do  p>
 рядку присвоюються всі символи ліворуч до
шуканого і праворуч  p>
 Stroka = Left (Stroka, ReturnNumber - 1) + Right (Stroka, _  p>
Len (Stroka) - ReturnNumber)  p>
 Loop  p>
MsgBox Stroka виводимо відредаговану рядок на екран  p>
 End
Sub  p>
 А
тепер представте, що ці рядки Вам потрібні більше одного разу і в різних місцях
!  p>
 Не
простіше написати підпрограму, яка
це робить і потім просто викликати її? Так, пишемо (поза модуля):  p>
 Public Sub RemSym (Stroka, Symbol)  p>
Do  p>
 ReturnNumber = InStr (1, Stroka,
Symbol): If _  p>
 ReturnNumber = 0 Then Exit Do  p>
 Stroka = Left (Stroka, ReturnNumber - 1)
+ Right _  p>
 (Stroka, Len (Stroka) - ReturnNumber)  p>
Loop  p>
 MsgBox Stroka  p>
 End
Sub  p>
 Ось
так, а тепер можна просто викликати цю підпрограму і передати значення рядка
або символ:  p>
 RemSym
Stroka, Symbol  p>
 і
з будь-якого місця!  p>
 Список літератури  h2>
 Для
підготовки даної роботи були використані матеріали з сайту http://visualprogs.narod.ru/
 p>