Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Создание пользовательских п ÒÉÌÏÖÅÎÉÊ ÓÒÅÄÓÔÁÍ...doc
Скачиваний:
6
Добавлен:
18.11.2019
Размер:
2.02 Mб
Скачать

Примеры на использование различных строковых функций Функция Format

Функция Format преобразует число в строку в соответствии с заданным параметром format (шаблон или форматная строка). Шаблон указывается в кавычках. Возможности создания форматной строки см. Help для таблицы, раздел Коды форматов.

Пример

Процедура форматирует число при помощи функции Format и это же число преобразует в строку.

Sub format_pi()

Dim s As Single

Dim Rstr As Variant

s = Application.Pi()

Rstr = Format(s, "##0.00")

Debug.Print TypeName(Rstr), Rstr

Rstr = Str(s)

Debug.Print TypeName(Rstr), Rstr

End Sub

Сравните результаты: в первом случае это 3,14, а во втором это 3.141593.

В шаблоне "##0.00" использованы коды формата - точка (.), # и 0.

Этот шаблон означает, что обязательно отображается хотя бы один знак целой части и всегда два знака дробной части, незначащие нули слева отбрасываются и высвечиваемое число округляется до второго знака.

Функция Format часто используется для форматирования переменных или выражений типа Date. Можно использовать следующие поименованные форматы даты: Long Date, Medium Date, Short Date, Long Time, Medium Time, Short Time.

При форматировании учитываются настройки "Языки и стандарты".

Например, Format((#7/26/2007#, "dddd d mmmm yyyy года") возвращает четверг 26 июль 2007 года, а Format(#7/26/2007#, "Long Date") возвращает 26 июль 2007 г.

Функция Val

Функция преобразует символьный аргумент в числовое значение, отбрасывая символы, которые не может распознать в качестве части числа, в том числе знак доллара и запятые, пробелы, символы табуляции и символы перевода строк.

Например, Val(" 1615.198-я ул. Н.Й.") и CDbl("1615,198") возвращают одно и то же числовое значение 1615,198.

Важно

  • Функция Val распознает в качестве разделителя целой и дробной части только точку (.). При необходимости использовать другой разделитель (например, запятую в русской версии), следует применять для преобразования строки в число, например, функцию CDbl().

Функции Len, Mid

Функция Len возвращает длину строки-аргумента.

Функция Mid выделяет подстроку. Синтаксис Mid(string, start [, length])

  • string - исходная строка;

  • startпозиция, начиная с которой выделяется подстрока;

  • lengthколичество выделяемых символов.

Пример

Процедура переставляет символы строки в обратном порядке и обнаруживает палиндром во введенной строке.

Sub palindrom()

Dim s As String, snew As String, n As Integer

Dim b as Boolean

s = InpurBoxВведите строку")

For n = Len(s) To 1 Step –1

snew = snew & Mid(s, n, 1)

Next n

b = s = snew

If b Then

Debug.Print "Тексты совпадают"

Else

Debug.Print "Тексты не совпадают"

End If

End Sub

Для ввода строки используется оператор InputBox. После перестановки символов сравниваются две строки – начальная и перевернутая. Если они совпадают, то распечатывается "Тексты совпадают", в противном случае "Тексты не совпадают".

Оператор b = s = snew присваивает переменной b значение True или False в зависимости от совпадения начальной и перевернутой строки.

Выполните процедуру, используя в качестве исходной строки слова-палиндромы "шалаш", "кабак" и т.д.