Excel VBA podijeljeni niz u niz
Niz je zbirka znakova spojenih zajedno, kada se ti znakovi podijele i pohrane u varijablu, tada ta varijabla postaje niz za te znakove, a metoda koju koristimo za razdvajanje niza da bi se pretvorio u niz je pomoću funkcije SPLIT u vba koja dijeli niz u jednodimenzionalni niz.
Kao i radni listovi u VBA, i mi imamo funkcije za rješavanje String ili Text vrijednosti. Dobro smo upoznati s operacijama niza poput izdvajanja prvog imena, prezimena, srednjeg imena itd. Ali što kažete na ideju cijepanja vrijednosti niza u nizove u VBA? Da, čuli ste kako se ispravno možemo rečenicu u nizu podijeliti u niz pomoću VBA kodiranja, a u ovom posebnom članku pokazat ćemo vam kako podijeliti niz u niz u programu Excel VBA.

Što je Split String u niz?
Prvo da pojasnim, "String into Array" nije ništa drugo nego "različiti dijelovi rečenice ili niza podijelit će se u više dijelova". Na primjer, ako je rečenica "Bangalore glavni grad Karnataka", tada je svaka riječ drugačiji niz.
Dakle, kako podijeliti ovu rečenicu u niz tema je ovog članka.
Kako pretvoriti podijeljeni niz u niz u programu Excel VBA?
Za pretvorbu podijeljenog niza u niz u VBA imamo funkciju koja se naziva "SPLIT". Ovo je VBA funkcija koja izvršava zadatak cijepanja isporučene vrijednosti niza na različite dijelove na temelju predviđenog graničnika.
Na primjer, ako je rečenica "Bangalore glavni grad Karnataka", razmak je razgraničenje između svake riječi.
Ispod je sintaksa funkcije SPLIT.

- Vrijednost ili izraz: Ovo je vrijednost niza ili teksta koju pokušavamo pretvoriti u niz razdvajanjem svakog dijela niza.
- (Razgraničenje): To nije ništa drugo nego uobičajene stvari koje razdvajaju svaku riječ u nizu. U našoj rečenici “Bangalore je glavni grad Karnataka” svaka je riječ odvojena svemirskim znakom, pa je naš razgraničnik ovdje prostor.
- (Ograničenje): Ograničenje nije ništa drugo nego koliko dijelova želimo kao rezultat. Za primjer u rečenici "Bangalore je glavni grad Karnataka" imamo sedam dijelova ako nam trebaju samo tri dijela tada ćemo prvi dio dobiti kao "Bangalore", drugi dio kao "je", a treći dio kao ostatak rečenica tj. "glavni grad Karnataka."
- (Usporedi): Ovo se ne koristi 99% vremena, stoga nemojmo to dodirivati u ovom trenutku.
Primjer # 1
Ok, pogledajmo sada praktične primjere.
Korak 1: Definirajte VBA varijablu koja će sadržavati vrijednost niza.
Kodirati:
Sub String_To_Array () Dim StringValue kao kraj niza Sub

Korak 2: Za ovu varijablu dodijelite niz "Bangalore je glavni grad Karnataka."
Kodirati:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore je glavni grad Karnatke" Kraj Sub

Korak 3: Zatim definirajte još jednu varijablu koja može sadržavati svaki dio gornje vrijednosti niza. Na ovo moramo imati na umu ovdje. Budući da rečenica ima više riječi, moramo definirati varijablu kao "Niz" koja sadrži više od jedne vrijednosti.
U ovom slučaju imamo 7 riječi u nizu pa definirajte niz kako slijedi.
Kodirati:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore je glavni grad Karnatke" Dim SingleValue () Kao String End Sub

Sada ćemo za ovu varijablu niza upotrijebiti funkciju SPLIT za razdvajanje niza u niz u programu Excel VBA.
Kodirati:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore je glavni grad Karnataka" Dim SingleValue () As String SingleValue = Split (StringValue, "") End Sub

Izraz je naša vrijednost niza, tj. Varijabla već sadrži vrijednost niza, pa unesite samo ime varijable.

Graničnik u ovom nizu je razmak, tako da navedite isto.
Kodirati:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore je glavni grad Karnataka" Dim SingleValue () As String SingleValue = Split (StringValue, "") End Sub
Od sada napustite ostale dijelove funkcije SPLIT.
Funkcija SPLIT podijelila je vrijednost niza na 7 dijelova, a svaka riječ razdvojila se nauštrb razmaka. Budući da smo varijablu “SingleValue” proglasili nizom, ovoj varijabli možemo dodijeliti svih 7 vrijednosti.
Kod možemo napisati na sljedeći način.
Kodirati:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore je glavni grad Karnataka" Dim SingleValue () As String SingleValue = Split (StringValue, "") MsgBox SingleValue (0) Kraj Sub
Pokrenite kôd i pogledajte što ćemo dobiti u okviru s porukom.

Od sada možemo vidjeti prvu riječ, tj. "Bangalore", kako bismo prikazali daljnje riječi, možemo napisati kod kako slijedi.
Kodirati:
Sub String_To_Array () Dim StringValue As StringValue = "Bangalore je glavni grad Karnataka" Dim SingleValue () As String SingleValue = Split (StringValue, "") MsgBox SingleValue (0) & vbNewLine & SingleValue (1) & vbNewueLue & 1 (2) & vbNewLine & SingleValue (3) & _vbNewLine & SingleValue (4) & vbNewLine & SingleValue (5) & vbNewLine & SingleValue (6) Kraj Sub
Now run the code and see what we get in the message box.

Each and every word has been split into arrays.
Example #2
Now imagine a situation of storing these values to cells i.e., each word into a separate cell. For this, we need to include the FOR NEXT loop in VBA.
The below code will insert each word into separate cells.
Sub String_To_Array1() Dim StringValue As String StringValue = "Bangalore is the capital city of Karnataka" Dim SingleValue() As String SingleValue = Split(StringValue, " ") Dim k As Integer For k = 1 To 7 Cells(1, k).Value = SingleValue(k - 1) Next k End Sub
This will insert each word, as shown in the below image.

Things to Remember
- Array and loops are used together to make the code dynamic.
- The SPLIT function requires common delimiter, which separates each word in the sentence.
- Duljina niza započinje od nule, a ne od 1.