Таблица 2.5 – Функции для работы со строками
Функция | Назначение |
Asc | Возвращает ASCII- код символа |
Chr | Преобразовывает ASCII-код в символ |
InStr, InStrRev | Осуществляет поиск одной строки в другой |
Lcase | Изменяет регистр букв исходной строки на нижний |
Left | Возвращает указанное количество символов с начала строки |
Len | Возвращает количество символов в строке |
Ltrim, RTrim, Trim | Удаляют пробелы, расположенные соответственно в начале, в конце и с обеих сторон символьной строки |
Функция | Назначение |
Mid | Возвращает заданное количество символов из произвольного места строки |
Right | Возвращает указанное количество символов с конца строки |
Str, CStr | Преобразовывают числовое выражение в строку |
StrReverse | Изменяет порядок следования символов в строке на обратный |
StrConv | Изменяет регистр букв символьной строки |
Продолжение таблицы 2.5 | |
Val | Преобразовывают строку в числовое выражение |
UCase | Изменяет регистр букв исходной строки на нижний |
В проектах VBA часто встречаются две разновидности диалоговых окон: окна сообщений и окна ввода. Они встроены в VBA, и если их возможностей достаточно, то можно обойтись без проектирования диалоговых окон. Окно сообщений выводит простейшие сообщения для пользователя, а окно ввода обеспечивает ввод информации.
Функция InputBox выводит на экран диалоговое окно, содержащее сообщение, поле ввода, и две кнопки OK и Cancel. Она устанавливает режим ожидания ввода текста пользователем и нажатия кнопки, а затем, при нажатии на кнопку OK, возвращает значение типа String, содержащее текст, введенный в поле ввода. При нажатии кнопки Cancel возвращается пустая строка.
Процедура MsgBox выводит на экран диалоговое окно, содержащее сообщение, устанавливает режим ожидания нажатия кнопки пользователем, а затем возвращает значение типа Integer, указывающее, какая кнопка была нажата.
3 АЛГОРИТМ РЕШЕНИЯ ПОСТАВЛЕННОЙ ЗАДАЧИ В MS WORD
S1
Для i=1 до len(s1)-1
Если mid(s1, i,1)=” ”Если mid(s2,1,1)=mid(s2,len(s2),1)
S3=s3+s2+” ”Иначе
s2 = s2 + Mid(s1, i, 1)
s3
4 АЛГОРИТМ РЕШЕНИЯ ПОСТАВЛЕННОЙ ЗАДАЧИ В MS EXCEL
Для i=1 до 5
Для j= 1 до 5a(i,j)
sum = 0
Для i=1 до 5b[i]=a[i,i]
sum=sum+b[i]
Для i=1 до 5
1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 |
7 | 9 | 11 | 13 | 15 |
2 | 4 | 4 | 6 | 7 |
3 | 6 | 4 | 0 | 8 |
Результат
1 | 2 | 3 | 4 | 5 |
0,18 | 0,21 | 0,24 | 0,27 | 0,3 |
7 | 9 | 11 | 13 | 15 |
0,06 | 0,121 | 0,121 | 0,18 | 0,21 |
3 | 6 | 4 | 0 | 8 |
Приложение А
ЭКРАННЫЕ ФОРМЫ
Рисунок А.1 – Работа программы в MS Word
Рисунок А.2 – Пример работы программы в MS Word
Приложение Б
ЛИСТИНГ ПРОГРАММЫ В MS EXCEL
Sub Laba1()
Dim m, i, j, k As Integer
Dim sum As Double
Dim a(5, 5), b(10) As Long
For i = 1 To 5
For j = 1 To 5
a(i, j) = Cells(i, j)
Next j
Next i
sum = 0
For i = 1 To 5
k = i
j = i
b(k) = a(i, j)
sum = sum + b(k)
Next i
For i = 2 To 5 Step 2
For j = 1 To 5
a(i, j) = a(i, j) / sum
Next j
Next i
Cells(7, 1) = "Конечная"
Cells(7, 2) = "матрица:"
For i = 1 To 5
For j = 1 To 5
Cells(i + 8, j) = a(i, j)
Next j
Next i
End Sub
Приложение В
ЛИСТИНГ ПРОГРАММЫ В MS WORD
Sub Laba2()
Dim s1, s2, s3 As String
Dim i, j As Integer
Selection.WholeStory
s1 = Selection.Text
For i = 1 To Len(s1) - 1
If Mid(s1, i, 1) = " " Then
If Mid(s2, 1, 1) = Mid(s2, Len(s2), 1) Then
s3 = s3 + s2 + " "
End If
s2 = ""
Else
s2 = s2 + Mid(s1, i, 1)
End If
Next i
Selection.Text = s1 + s3
End Sub