- •Содержание
- •Введение
- •1 Основные понятия языка программирования vba
- •1.1 Элементы языка
- •1.2 Константы
- •1.3 Идентификаторы
- •StrMyName, I, intNumOne, Номер, Max_Len и т.П.
- •1.4 Переменные
- •1.5 Выражения и операции
- •1.6 Массивы
- •1.7 Строки
- •2 Структура программы на vba
- •2.1 Оператор комментария
- •2.2 Оператор присваивания
- •2.3 Оператор вывода и диалоговые окна ввода/вывода информации
- •2.4 Оператор безусловного перехода
- •2.5 Оператор условного перехода
- •2.6 Оператор множественного выбора
- •2.7 Операторы цикла
- •If условие Then Exit For
- •If условие Then Exit Do
- •2.8 Обработка информационных массивов
- •2.9 Процедуры и функции
- •2.10 Обработка строковой информации
- •3 Элементы среды разработки vba
- •3.1 Панель инструментов Стандартная
- •3.2 Элементы управления
- •Лабораторная работа №1 Тема: Инструментальная среда языка программирования vba
- •1) Активизируйте редактор vba.
- •2) Ознакомьтесь с интерфейсом редактора vba.
- •3) Добавьте в окно проекта Стандартный модуль командой меню Вставка/Модуль (Insert/Module).
- •4) Добавьте Форму в окно проекта командой меню Вставка/ UserForm (Insert/ UserForm).
- •Лабораторная работа №2 Тема: Разработка программ линейной структуры в среде vba
- •1) Способ представления алгоритма в виде блок-схемы.
- •2) Линейная структура программы в vba.
- •5) Выполните ввод числовых значений:
- •6) Программа выведет на экран монитора диалоговое окно с результатом вычислений:
- •Индивидуальные задания для самостоятельной работы
- •Задание 1. По предложенной блок-схеме разработать программу. Используя функцию Round, округлить результаты вычислений.
- •Варианты задания 3
- •Лабораторная работа №3 Тема: Разработка программ разветвленной структуры в среде vba
- •1) Понятие разветвленной вычислительной структуры.
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 4 Тема: Разработка программ циклической структуры в среде vba
- •1) Понятие циклического вычислительного процесса.
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •3) Внести изменения в программу Пример4 так, чтобы было возможно вычисление суммы любого количества чисел «2».
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •7) Реализовать данную программу (рис. 22) в среде vba Microsoft Excel. Выполнить вывод заголовков и результатов в окно Immediate:
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 5 Тема: Разработка программ обработки информационных массивов в среде vba
- •1) Порядок обработки информационного массива.
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •Лабораторная работа №6 Тема: Разработка программ смешанной структуры в среде vba
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •Индивидуальные задания для самостоятельной работы
- •Блок-схема алгоритма:
- •Литература
- •Правила изображения блок-схем
- •Указатель
2.10 Обработка строковой информации
1) При объединении двух и более строк используется операция называемая конкатенацией, которая реализуется с помощью оператора &. Например:
Dim strA, strB, strC As String
strA = "Строковая "
strB = "переменная"
strC = strA & strB ‘Результат: "Строковая переменная"
Помимо оператора &, объединять строки можно также при помощи сложения. Например: strC = strA + strB.
2) В том случае, когда необходимо преобразовать величину числового типа в строку, следует использовать функцию CStr, указывая в качестве параметра изменяемую переменную. Например:
Dim strA, strC As String
Dim sngB As Single
strA = "X = "
sngB = 45.77
strC = strA + CStr(sngB) ‘Результат: "Х= 45.77"
3) В языке VBA существует возможность изменения строки таким образом, чтобы все используемые в ней буквы были преобразованы либо в верхний регистр (ВСЕ ПРОПИСНЫЕ), либо в нижний (все строчные). Для этих целей используются, соответственно, функции UCase и LCase. Например:
Dim strA, strB As String
strA = "Строковая Переменная"
strB = UCase(strA) ‘Результат: "СТРОКОВАЯ ПЕРЕМЕННАЯ"
strB = LCase(strA) ‘Результат: "строковая переменная"
4) Для того чтобы заменить какую-либо часть строки или определенные символы, следует использовать функцию Replace. Например:
Dim strA, strB As String
strA = "Строковая Переменная"
strB = Replace(strA, "овая", "а -") ‘Результат: "Строка - Переменная"
strB = Replace(strA, "о", "О") ‘Результат: " СтрОкОвая Переменная"
Кроме обязательных параметров - результирующей, заменяемой и заменяющей строк - могут также использоваться необязательные параметры, а именно: позиция в строке для начала замены и количество возможных изменений. Следует отметить, что при этом часть строки, которая расположена перед позицией начала замены, будет удалена. Например:
strB = Replace(strA, "e", "Е", 10, 3) ‘Результат: "ПЕрЕмЕнная"
strB = Replace(strA, "о", "О", 1, 1) ‘Результат: "СтрОковая Переменная"
5) Для определения количества символов применяется функция Len, при этом в качестве параметра указывается рассматриваемая строка. Например:
Dim strA As String
Dim intA As Integer
strA = "Строковая переменная"
intA = Len (strA) ‘Результат: 20
6) Если в программе возникает необходимость выделения из строковой переменной той или иной ее части, то в этом случае следует использовать одну из функций: Left, Right или Mid.
Функция Left применяется для выделения подстроки в начале исходной строки. Формат данной функции следующий:
Left(строка, количество)
Результатом функции Left является строка с указанным количеством символов, находящаяся в начале исходной строки.
Функция Right используется при выделении подстроки в конце исходной строки. Функция имеет формат:
Right(строка, количество)
Результатом функции Right является строка с указанным количеством символов, расположенная в конце исходной строки.
Функция Mid применяется для выделения подстроки в середине исходной строки. Данная функция имеет следующий формат:
Mid (строка, номер, [количество])
Результатом функции Mid является строка с указанным количеством символов, находящаяся в исходной строке, начиная с определенного номера.
Пример использования рассмотренных функций.
Dim strA, strВ As String
strA = "Это строковая переменная"
strB = Left(strA, 3) ‘Результат: "Это"
strB = Right (strA, 10) ‘Результат: "переменная"
strB = Mid(strA, 5, 9) ‘Результат: "строковая"