Excel VBA Split String menjadi Array
String adalah kumpulan watak yang digabungkan, apabila watak-watak ini dibahagikan dan disimpan dalam pemboleh ubah maka pemboleh ubah tersebut menjadi larik untuk watak-watak ini dan kaedah yang kami gunakan untuk membagi rentetan untuk dijadikan array adalah dengan menggunakan fungsi SPLIT vba yang membahagi rentetan dalam rentetan satu dimensi.
Seperti lembaran kerja di VBA juga, kita mempunyai fungsi untuk menangani nilai String atau Teks. Kami sangat biasa dengan operasi rentetan seperti mengekstrak nama fir, nama belakang, nama tengah, dan lain-lain. Tetapi bagaimana dengan idea untuk membelah nilai rentetan menjadi tatasusunan dalam VBA? Ya, anda dengar betul kita dapat membagi kalimat rentetan menjadi susunan dengan menggunakan pengekodan VBA, dan dalam artikel khas ini, kami akan menunjukkan kepada anda cara membagi rentetan menjadi array dalam Excel VBA.

Apakah Split String menjadi Array?
Izinkan saya menjelaskan ini terlebih dahulu, "String to Array" tidak lain adalah "bahagian ayat atau rentetan yang berlainan akan dibahagikan kepada beberapa bahagian." Sebagai contoh, jika kalimatnya adalah "Bangalore adalah ibu kota Karnataka," maka setiap kata adalah susunan yang berbeza.
Jadi, cara membahagikan ayat ini menjadi larik adalah topik artikel ini.
Bagaimana Menukar String Split menjadi Array di Excel VBA?
Untuk menukar rentetan menjadi array dalam VBA, kita memiliki fungsi yang disebut "SPLIT." Ini adalah fungsi VBA yang melakukan tugas membelah nilai rentetan yang dibekalkan ke bahagian yang berbeza berdasarkan pembatas yang disediakan.
Contohnya, jika kalimat itu "Bangalore adalah ibu kota Karnataka," ruang adalah pembatas antara setiap kata.
Berikut adalah sintaks fungsi SPLIT.

- Nilai atau Ekspresi: Ini adalah rentetan atau nilai teks yang kami cuba ubah ke array dengan memisahkan setiap bahagian rentetan.
- (Pembatas): Ini hanyalah perkara biasa yang memisahkan setiap perkataan dalam rentetan. Dalam kalimat kami "Bangalore adalah ibu kota Karnataka" setiap perkataan dipisahkan oleh watak ruang, jadi pembatas kami adalah ruang di sini.
- (Had): Had tidak lain adalah berapa banyak bahagian yang kita mahukan sebagai hasilnya. Sebagai contoh dalam kalimat "Bangalore adalah ibu kota Karnataka" kita mempunyai tujuh bahagian jika kita hanya memerlukan tiga bahagian maka kita akan mendapat bahagian pertama sebagai "Bangalore", bagian kedua sebagai "adalah" dan bahagian ketiga sebagai sisa kalimat iaitu "ibu kota Karnataka."
- (Bandingkan): Ini tidak digunakan 99% sepanjang masa, jadi jangan sampai menyentuh perkara ini pada waktu ini.
Contoh # 1
Ok, sekarang mari kita lihat contoh praktikal.
Langkah 1: Tentukan pemboleh ubah VBA untuk menahan nilai rentetan.
Kod:
Sub String_To_Array () Dim StringValue Sebagai String End Sub

Langkah 2: Untuk pemboleh ubah ini tetapkan rentetan "Bangalore adalah ibu kota Karnataka."
Kod:
Sub String_To_Array () Dim StringValue Sebagai String StringValue = "Bangalore adalah ibu kota Karnatka" End Sub

Langkah 3: Seterusnya, tentukan satu lagi pemboleh ubah yang dapat menahan setiap bahagian nilai rentetan di atas. Mengenai hal ini kita harus ingat di sini adalah kerana kalimat itu mempunyai lebih dari satu kata, kita perlu mendefinisikan pemboleh ubah sebagai "Array" untuk menyimpan lebih dari satu nilai.
Dalam kes ini, kita mempunyai 7 kata dalam rentetan itu, tentukan susunannya seperti berikut.
Kod:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnatka" Dim SingleValue () Sebagai String End Sub

Sekarang untuk pemboleh ubah array ini, kita akan menggunakan fungsi SPLIT untuk memisahkan rentetan menjadi array dalam Excel VBA.
Kod:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnataka" Dim SingleValue () Sebagai String SingleValue = Split (StringValue, "") End Sub

Ungkapan adalah nilai rentetan kami iaitu, pemboleh ubah sudah memegang nilai rentetan jadi masukkan nama pemboleh ubah sahaja.

Pembatas dalam rentetan ini adalah watak ruang jadi berikan yang sama.
Kod:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnataka" Dim SingleValue () Sebagai String SingleValue = Split (StringValue, "") End Sub
Mulai sekarang, tinggalkan bahagian fungsi SPLIT yang lain.
Fungsi SPLIT memisahkan nilai rentetan menjadi 7 keping, setiap kata dipisahkan dengan mengorbankan watak ruang. Oleh kerana kita telah menyatakan pemboleh ubah "SingleValue" sebagai array, kita dapat menetapkan semua 7 nilai untuk pemboleh ubah ini.
Kita boleh menulis kodnya seperti berikut.
Kod:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnataka" Dim SingleValue () Sebagai String SingleValue = Split (StringValue, "") MsgBox SingleValue (0) End Sub
Jalankan kod dan lihat apa yang kita dapat di kotak mesej.

Sampai sekarang, kita dapat melihat kata pertama iaitu "Bangalore," untuk menunjukkan kata-kata lebih lanjut kita dapat menulis kodnya seperti berikut.
Kod:
Sub String_To_Array () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnataka" Dim SingleValue () As String SingleValue = Split (StringValue, "") MsgBox SingleValue (0) & vbNewLine & SingleValue (1) & vbNewLine & SingleValue (2) & vbNewLine & SingleValue (3) & _vbNewLine & SingleValue (4) & vbNewLine & SingleValue (5) & vbNewLine & SingleValue (6) End Sub
Sekarang jalankan kod dan lihat apa yang kita dapat di kotak mesej.

Setiap perkataan telah dibahagikan kepada susunan.
Contoh # 2
Sekarang bayangkan situasi menyimpan nilai-nilai ini ke sel iaitu, setiap perkataan menjadi sel yang terpisah. Untuk ini, kita perlu memasukkan gelung FOR NEXT dalam VBA.
Kod di bawah akan memasukkan setiap perkataan ke dalam sel yang berasingan.
Sub String_To_Array1 () Dim StringValue As String StringValue = "Bangalore adalah ibu kota Karnataka" Dim SingleValue () Sebagai String SingleValue = Split (StringValue, "") Dim k Sebagai Integer Untuk k = 1 hingga 7 Sel (1, k) .Value = Nilai Tunggal (k - 1) Selanjutnya Akhir Sub Akhir
Ini akan memasukkan setiap perkataan, seperti yang ditunjukkan pada gambar di bawah.

Perkara yang Perlu Diingat
- Array dan gelung digunakan bersama untuk menjadikan kod dinamik.
- Fungsi SPLIT memerlukan pembatas umum, yang memisahkan setiap perkataan dalam ayat.
- Panjang array bermula dari sifar, bukan dari 1.