Какво представлява функцията за разделяне на VBA в Excel?
Функцията за разделяне във VBA е много полезна функция за низ, която се използва за разделяне на низове на множество поднизове въз основа на разделител, предоставен на функцията и метод за сравнение, има и други функции на низ, които преобразуват низ в подниз, но функцията за разделяне може да раздели низ в повече от един подниз.
В нормалния работен лист функцията НАЛЯВО, функциите MID и НАДЯСНО в Excel се използват като текстови функции в Excel за извличане на частта от изречението. Например извличане на собствено, бащино и фамилно име са често срещаните сценарии, които сме виждали. Но във VBA имаме по-универсалната функция, наречена SPLIT, която ще свърши подобна работа за вас. SPLIT е вградена функция в Excel VBA, която може да разделя предоставеното изречение въз основа на разделителя. Например, ако искате да разделите имейл адреса на различни части, общият елемент в имейл адреса е „@“ във всички имейл адреси, така че „@“ става разделител тук.

Функция за разделяне на низове на VBA
Както всички останали функции, разделянето също има свой синтаксис. По-долу са показани параметрите на функцията за разделяне на нива на Excel VBA.

- Стойност или израз: Това не е нищо друго освен действителната стойност, която се опитваме да разделим. Например, ако искате да разделите собствено и фамилно име, пълното име е стойността тук.
- (Разделител): Кой е общия елемент за разделяне на стойността или израза? В имейл идентификатора „@“ е общият елемент, а в адресната запетая (,) е общият елемент. Ако пренебрегнете това, той разглежда интервала като стойност по подразбиране.
- (Limit): Колко подниза искате от стойността или израза, които сте предоставили. Например, ако стойността е „Моето име е Excel“, ако посочите 3 като лимит, той ще покаже резултата в три реда като „My“, „name“, „is Excel“.
- (Сравнение): Тъй като не използваме аргумент за сравнение, пропуснете този незадължителен аргумент.
В следващите раздели на статията ще видим как на практика да използваме функцията SPLIT в Excel VBA.
Примери за VBA Split String функция
По-долу са дадени практическите примери за функцията за разделяне в Excel VBA.
Пример # 1 - Разделете изречението
Split връща резултата в масива, който ще започне от 0. Всички масиви започват от 0, а не от 1.
Да предположим, че имате думата „My Name is Excel VBA“ в клетка A1.

Сега искате да разделите това изречение на парчета като „My“, „Name“, „is“, „Excel“, „VBA“. Използвайки функцията Excel VBA SPLIT String, можем да върнем този резултат.
Стъпка 1: Стартирайте макроса с името.

Код:
Sub Split_Example1 () Край на Sub Стъпка 2: Декларирайте три променливи.

Код:
Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String End Sub
Стъпка 3: Сега за дефинираната променлива My Text присвоява думата „My Name is 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: Сега Моят резултат съдържа този разделен резултат. Както казах по-рано в публикацията, функцията split съхранява резултата като масив, така че тук
- Моят резултат (0) = „Моят“
- Моят резултат (1) = „Име“
- Моят резултат (2) = „е“
- Моят резултат (3) = „Excel“
- Моят резултат (4) = “VBA”
Въпреки че този код не оказва влияние за стартиране на функцията SPLIT, ние можем да използваме този код.
Пример # 2 - VBA SPLIT String с функция UBOUND
За да съхраним резултата от функцията SPLIT, можем да използваме функцията vba UBOUND заедно с функцията SPLIT.
UBOUND ще върне максималната дължина на масива. В горния пример максималната дължина на масива беше 5.
Вземете същата дума „My Name is Excel VBA“. Нека разделим тази дума и съхраняваме от клетка А1 нататък.
Step 1: Let’s continue from where we left off in the previous example.

Step 2: Now apply FOR NEXT LOOP in VBA from 0 to maximum length of the array i.e. UBOUND.

The reason we started from zero because SPLIT will store the result from zero, not from 1.
Step 3: Now apply VBA CELLS property and store the result.
Code:
Cells(i + 1, 1).Value = MyResult(i)

Step 4: Run this code, we would have split values.

Complete Code:
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
Return Word Count
We can also show the total number of words in the supplied value. Use the below code to show the total number of word counts. Code:
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

Copy and paste the above VBA code and run it, the message box will return the result.

Things to Remember
- If the delimiter is not supplied SPLIT automatically thinks the delimiter as space.
- If you want to split except space then you need to specify the delimiter in double-quotes.
- SPLIT stores the result as array results.
- UBOUND function returns the maximum length of the array.
Recommended Articles
Това е ръководство за VBA Split Function. Тук научихме как да използваме VBA Split String Function в Excel заедно с някои практически примери и изтегляем Excel шаблон. По-долу има някои полезни статии за Excel, свързани с VBA -
- Как да активирам RegEx във VBA?
- Функция StrComp в Excel VBA
- Обект на VBA WorkBook
- VBA Sleep функция в Excel
- Създайте обобщена таблица в Excel VBA
- Правете до Loop във VBA
- Изберете Cell в VBA
- Функция на работния лист във VBA
- Индекс извън обхвата