Смекни!
smekni.com

Создание программного продукта на языке программирования Visual Basic for Applications (стр. 3 из 3)

Таблица 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 = s2 + Mid(s1, i, 1)


s3



4 АЛГОРИТМ РЕШЕНИЯ ПОСТАВЛЕННОЙ ЗАДАЧИ В MS EXCEL

Для i=1 до 5

Для j= 1 до 5

a(i,j)

sum = 0

Для i=1 до 5

b[i]=a[i,i]

sum=sum+b[i]

Для i=1 до 5

Для i=1 до 5

Для j=1 до 5

a(i,j)


5 ТЕСТОВЫЕ ПРИМЕРЫ

MS WORD

№1

Дед Мороз - красный нос, ты подарки нам принёс?

Дед

№2

Трактат о несчастной любви.

Трактат

MS EXCEL

№1

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