Функция разделения в VBA — это очень полезная строковая функция, которая используется для разделения строк на несколько подстрок на основе разделителя, предоставленного функции, и метода сравнения. Существуют и другие строковые функции, которые преобразуют строку в подстроку, но функция разделения может разбить строку на более чем одна подстрока.
В обычном рабочем листе ЛЕВАЯ функция, MID-функцииСЧ-функцииФункция mid в Excel — это текстовая функция, которая находит строки и возвращает их из любой средней части электронной таблицы. читать далее, и ПРАВИЛЬНО в excelПРАВИЛЬНО В ExcelФункция Right — это текстовая функция, которая возвращает количество символов с конца строки справа налево. Например, если мы используем эту функцию как =RIGHT («ANAND», 2), это даст нам результат ND.читать далее используются как текстовые функции в excelТекстовые функции в ExcelФункция ТЕКСТ в Excel — это строковая функция, используемая для изменения заданного ввода на текст, предоставленный в указанном числовом формате. Он используется, когда мы получаем большие наборы данных от нескольких пользователей и форматы разные.читать далее выделить часть предложения. Например, извлечение имени, отчества и фамилии — это распространенные сценарии, которые мы видели. Но в VBA у нас есть более универсальная функция SPLIT, которая сделает за вас аналогичную работу. SPLIT — это встроенная функция в Excel VBA, которая может разделить предоставленное предложение на основе разделителя. Например, если вы хотите разделить адрес электронной почты на разные части, общим элементом в адресе электронной почты является «@» во всех идентификаторах электронной почты, поэтому «@» становится здесь разделителем.
Вы можете использовать это изображение на своем веб-сайте, в шаблонах и т. д. Пожалуйста, предоставьте нам ссылку на авторствоКак предоставить атрибуцию?Ссылка на статью должна быть гиперссылкой Например: Источник: Функция разделения VBA (wallstreetmojo.com)
Функция разделения строк VBA
Как и все остальные функции, split тоже имеет свой синтаксис. Ниже приведены параметры функции Excel VBA Split string.
Значение или выражение: Это не что иное, как фактическое значение, которое мы пытаемся разделить. Например, если вы хотите разделить имя и фамилию, здесь значением является полное имя.
[Delimiter]: Что является общим элементом для разделения значения или выражения? В идентификаторе электронной почты «@» является общим элементом, в адресе запятая (,) является общим элементом. Если вы игнорируете это, он считает пробел значением по умолчанию.
[Limit]: Сколько подстрок вы хотите получить из предоставленного вами значения или выражения. Например, если значение «Меня зовут Excel», если вы укажете 3 в качестве предела, результат будет отображаться в трех строках, таких как «Мой», «имя», «это Excel».
[Compare]: Поскольку мы не используем аргумент сравнения, пропустите этот необязательный аргумент.
В следующих разделах статьи мы увидим, как практически использовать функцию SPLIT в Excel VBA.
Примеры функции разделения строк VBA
Ниже приведены практические примеры функции разделения в Excel VBA.
Split возвращает результат в виде массива, который начинается с 0. Все массивы начинаются с 0, а не с 1.
Предположим, у вас есть слово «Меня зовут Excel VBA» в ячейке A1.
Теперь вы хотите разбить это предложение на части, такие как «Мой», «Имя», «есть», «Excel», «VBA». Используя функцию Excel VBA SPLIT String, мы можем вернуть этот результат.
Шаг 1: Запустите макрос с именем.
Код:
Sub Split_Example1()
End Sub
Step 2: Declare three variables.
Код:
Sub Split_Example1()
Dim MyText As String Dim i As Integer Dim MyResult() As String
End Sub
Шаг 3: Теперь для определенной переменной My Text присваивает слово «Меня зовут Excel VBA».
Код:
Sub Split_Example1()
Dim MyText As String Dim i As Integer Dim MyResult() As String
MyText = "My Name is Excel VBA"
End Sub
Шаг 4: Теперь для переменной My Result примените функцию разделения строки VBA.
Код:
Sub Split_Example1()
Dim MyText As String Dim i As Integer Dim MyResult() As String
MyText = "My Name is Excel VBA"
MyResult = Split(
End Sub
Шаг 5: Выражение — это наше текстовое значение. Поскольку мы уже присвоили наше текстовое значение переменной My Text, введите этот аргумент здесь.
Код:
Sub Split_Example1()
Dim MyText As String Dim i As Integer Dim MyResult() As String
MyText = "My Name is Excel VBA"
MyResult = Split(MyText)
End Sub
Примечание. Как и сейчас, игнорируйте все остальные параметры.
Шаг 6: Так что теперь My Result содержит этот разделенный результат. Как я уже говорил ранее в посте, функция разделения сохраняет результат в виде массива, поэтому здесь
Мой результат (0) = «Мой»
Мой результат (1) = «Имя»
Мой результат (2) = «есть»
Мой результат (3) = «Excel»
Мой результат (4) = «VBA»
Несмотря на то, что этот код никак не влияет на запуск функции SPLIT, мы можем использовать этот код.
Пример № 2. Строка VBA SPLIT с функцией UBOUND
Чтобы сохранить результат функции SPLIT, мы можем использовать функция vba UBOUNDФункция Vba UBOUNDUBOUND, также известная как Верхняя граница, — это функция VBA, которая используется в сочетании с противоположной функцией, LBOUND, также известной как Нижняя граница. Эта функция используется для определения длины массива в коде, и, как следует из названия, UBOUND используется для определения верхнего предела массива.читать далее вместе с функцией SPLIT.
UBOUND вернет максимальную длину массива. В приведенном выше примере максимальная длина массива равнялась 5.
Возьмите то же слово «Меня зовут Excel VBA». Давайте разделим это слово и сохраним его, начиная с ячейки A1.
Шаг 1: Продолжим с того места, на котором остановились в предыдущем примере.
Шаг 2: Теперь применить ДЛЯ СЛЕДУЮЩЕГО ЦИКЛА в VBAДЛЯ СЛЕДУЮЩЕГО ЦИКЛА В VBAВсе языки программирования используют цикл VBA For Next. После оператора FOR в этом цикле есть критерий, и код повторяется до тех пор, пока критерий не будет достигнут. читать далее от 0 до максимальной длины массива, т.е. UBOUND.
Причина, по которой мы начали с нуля, заключается в том, что SPLIT будет хранить результат с нуля, а не с 1.
Шаг 3: Теперь применить Свойство VBA CELLSСвойство VBA CELLSЯчейки — это ячейки рабочего листа, и в VBA, когда мы ссылаемся на ячейки как на свойство диапазона, мы ссылаемся на одни и те же ячейки. В концепциях VBA ячейки также одинаковы, ничем не отличаются от обычных ячеек Excel.читать далее и сохранить результат.
Код:
Cells(i + 1, 1).Value = MyResult(i)
Шаг 4: Запустив этот код, мы разделим значения.
Полный код:
Sub Split_Example1()
Dim MyText As String Dim i As Integer Dim MyResult() As String
MyText = "My Name is Excel VBA"
MyResult = Split(MyText)
For i = 0 To UBound(MyResult)
Cells(i + 1, 1).Value = MyResult(i)
Next i
End Sub
Вернуть количество слов
Мы также можем показать общее количество слов в предоставленном значении. Используйте приведенный ниже код, чтобы показать общее количество слов. Код:
Sub Split_Example2()
Dim MyText As String Dim i As Integer Dim MyResult() As String
MyText = "My Name is Excel VBA"
MyResult = Split(MyText)
i = UBound(MyResult()) + 1
MsgBox "Total Words Count is " & i
End Sub
Скопируйте и вставьте вышеуказанное код VBAКод VBAКод VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи.читать далее и запустите его, окно сообщения вернет результат.
То, что нужно запомнить
Если разделитель не указан, SPLIT автоматически воспринимает разделитель как пробел.
Если вы хотите разделить, кроме пробела, вам нужно указать разделитель в двойных кавычках.
SPLIT сохраняет результат в виде массива результатов.
Функция UBOUND возвращает максимальную длину массива.