VBA Split - Разделение текста на части в Excel
VBA Split - это функция, которая разделяет строку на массив подстрок, используя разделитель, заданный пользователем. Функция Split является частью стандартной библиотеки VBA и доступна в любом проекте VBA.
Синтаксис функции Split выглядит следующим образом:
Split(expression [, delimiter] [, limit] [, compare])
expression - обязательный параметр, который представляет строку, которую необходимо разделить на подстроки.
delimiter - необязательный параметр, который используется для указания символа или строки, по которой будет осуществляться разделение строк. Если этот параметр не указан, то Split использует пробел или табуляцию как разделитель.
limit - необязательный параметр, который используется для указания максимального количества элементов, которые должны быть возвращены функцией Split.
compare - необязательный параметр, который используется для указания типа сравнения, который будет использоваться для сопоставления строк при разделении. В качестве значений можно указывать значение констант vbBinaryCompare, vbTextCompare или vbDatabaseCompare.
Ниже приведены несколько примеров использования функции Split:
Пример 1:
Dim MyString As String
MyString = "apple,orange,banana"
Dim MyArray() As String
MyArray = Split(MyString, ",")
MsgBox MyArray(1)
В этом примере функция Split используется для разбиения строки MyString на подстроки, используя запятую в качестве разделителя. Результатом является массив строк, содержащий три элемента. Последняя строка выводит всплывающее окно, которое отображает значению элемента массива с индексом 1 (т.е. значение «orange»).
Пример 2:
Dim MyString As String
MyString = "The quick brown fox jumps over the lazy dog."
Dim MyArray() As String
MyArray = Split(MyString)
MsgBox MyArray(5)
В этом примере Split используется без указания разделителя, поэтому функция разбивает входную строку на подстроки, используя пробелы в качестве разделителей. Результатом является массив строк, содержащий девять элементов. Последняя строка выводит всплывающее окно, которое отображает элемент массива с индексом 5 (т.е. значение «fox»).
Пример 3:
Dim MyString As String
MyString = "12-10-2019"
Dim MyArray() As String
MyArray = Split(MyString, "-")
MsgBox MyArray(0) & "/" & MyArray(1) & "/" & MyArray(2)
В этом примере Split используется для разбиения строки MyString на подстроки, используя дефис в качестве разделителя. Результатом является массив строк, содержащий три элемента. Последняя строка выводит всплывающее окно, которое отображает дату в формате «12/10/2019», составленную из трех подстрок, разделенных символом «/».
В заключение, функция Split очень полезна при работе с текстовыми данными и позволяет легко разбивать строки на подстроки с помощью заданного разделителя. Приведенные выше примеры отображают лишь некоторые возможности этой функции, но ее применение не ограничивается только этим.