Реферат: Строковые переменные
Строковые переменные очень важны. Без них, например, невозможен разговор с компьютером. Да и вообще, значительная часть информации, с которой работает компьютер, текстовая (то есть строковая).
Создайте двухкнопочный проект с такой программой:
Dim a As Integer
Dim b As String
_____________________________
Private Sub Command1_Click()
a = 98
Debug.Print a
End Sub
_____________________________
Private Sub Command2_Click()
b = «Привет всем!»
Debug.Print b
End Sub
Сравним две процедуры.
Объявление Dim a As Integer говорит о том, что переменная a обязана иметь числовое значение, и поэтому в первой процедуре оператор a=98 записывает в ячейку a число 98.
Объявление Dim b As String говорит о том, что переменная b обязана иметь строковое (текстовое) значение, то есть ее значением будет не число, а произвольная цепочка символов, например, Привет всем! или рпН2Н(*fD6:u. Поэтому во второй процедуре оператор b =«Привет всем!» записывает в ячейку b строкуПривет всем!. Оператор Debug.Print b, поскольку он обязан всегда выводить на экран содержимое ячейки b, выведет на экран текст Привет всем!
Обратите внимание, что в программе текст должен браться в двойные кавычки, а в памяти он хранится без кавычек и на экран выводится без кавычек.
Информация в ячейке памяти под строковую переменную может в процессе выполнения программы меняться точно так же, как и в ячейке для числовой переменной. Например, при выполнении фрагмента
a=«Минуточку!»: Debug.Print a: a=«Здравствуйте!»: a=«До свидания!»: Debug.Print a
в ячейке a будут по очереди появляться строки
Минуточку! Здравствуйте! До свидания!
а на экран будут выведены строки:
Минуточку!
До свидания!
Еще пример:
a=«Цикл»: Debug.Print a: a=a+a: Debug.Print a+a+a +«Конец цикла»
Поскольку знак + по отношению к строкам есть знак соединения, то a+a будет равняться «ЦиклЦикл» и это же — новое значение a. Поэтому здесь на экран будут выведены строки:
Цикл
ЦиклЦиклЦиклЦиклЦиклЦиклКонец цикла
Выражения a+a и a+a+a +«Конец цикла» в последнем примере являются ни чем иным, как строковыми выражениями, по той простой причине, что в них производятся действия, результатом которых является строка.
Строковую переменную можно задавать не только оператором присваивания, но и функцией InputBox. При вводе ставить кавычки тоже не надо. Пример:
Dim a As String
Private Sub Command1_Click()
a = InputBox(«Введите какое-нибудь слово»)
Debug.Print «Вы ввели слово »; a
End Sub
Обратите внимание на пробел перед второй кавычкой в операторе Debug.Print. Он нужен для того, чтобы слова при выводе не сливались.
Прежде, чем идти дальше, нужно, конечно, разобраться с хитросплетениями запятых, точек с запятыми, кавычек и пробелов в операторе Print: