Excel VBA: Cara Mengganti Teks dalam String (5 Cara Efektif)

  • Bagikan Ini
Hugh West

Jika Anda mencari cara untuk mengganti teks dalam sebuah string menggunakan Excel VBA Mengganti bagian teks tertentu dapat menghemat banyak waktu dalam mengetik string teks lagi. Jadi, mari kita masuk ke artikel utama untuk mengetahui detail tentang tugas penggantian ini.

Unduh Buku Kerja

Ganti Teks dalam String.xlsm

5 Cara Mengganti Teks dalam String Menggunakan Excel VBA

Di sini, kami memiliki dataset berikut yang berisi beberapa catatan karyawan dengan id email mereka. Tugas kami adalah mengganti nama domain lama dengan yang baru. Dalam metode berikut, kami akan bekerja dengan dataset ini bersama dengan beberapa string teks acak untuk mengganti teks yang diinginkan dengan VBA kode.

Kami telah menggunakan Microsoft Excel 365 di sini, Anda dapat menggunakan versi lain sesuai dengan kenyamanan Anda.

Metode-01: Ganti Teks Mulai dari Posisi ke-n dari String Acak

Di sini, kita akan mengganti teks dalam string teks acak untuk posisi awal yang berbeda.

Langkah-01 :

➤ Pergi ke Pengembang Tab>> Kode Kelompok>> Visual Basic Opsi.

Kemudian, itu Editor Visual Basic akan terbuka.

➤ Pergi ke Sisipkan Tab>> Modul Opsi.

Setelah itu, a Modul akan dibuat.

Langkah-02 :

Tulis kode berikut ini

 Sub Sub substitusi_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 1) MsgBox updated_str End Sub 

Di sini, kita telah menyatakan full_txt_str dan updated_str sebagai String dan kemudian ditugaskan full_txt_str ke string teks acak- "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" Kemudian VBA Fungsi REPLACE digunakan untuk menggantikan Mobil bagian dari string acak ini dengan Sepeda dan 1 digunakan di sini untuk memulai penggantian dari posisi 1 dari string ini. Akhirnya, kita telah menetapkan string teks baru ini ke updated_str dan dengan kotak pesan ( MsgBox ) kita akan melihat hasilnya.

➤ Tekan F5 .

Kemudian kotak pesan akan muncul dengan string teks baru dengan teks yang diganti Sepeda .

➤ Untuk melakukan proses penggantian dari contoh kedua dari Mobil gunakan kode berikut ini.

 Sub Sub substitusi_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 14) MsgBox updated_str End Sub 

Di sini, kita telah menggunakan posisi awal sebagai 14 karena kita ingin memiliki bagian string setelah Seratus Mobil dan mengganti Mobil di sini.

➤ Setelah berjalan kode tersebut, kita akan memiliki yang berikut ini kotak pesan dengan string teks mulai dari teks Lima puluh dan dengan Sepeda dalam posisi Mobil .

➤ Untuk hanya memiliki bagian terakhir dari string ini, kami menerapkan kode berikut.

 Sub Sub substitusi_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 25) MsgBox updated_str End Sub 

Di sini, kita telah menggunakan posisi awal sebagai 25 karena kita ingin memiliki bagian string setelah Lima Puluh Mobil dan mengganti Mobil dengan Sepeda di sini.

Akhirnya, kita akan memiliki kotak pesan dengan bagian string yang kita inginkan memiliki penggantian dengan Sepeda .

Baca Juga: Excel VBA: Ganti Karakter dalam String berdasarkan Posisi (4 Cara Efektif)

Metode-02: Teks Pengganti untuk Kemunculan ke-n dari String Acak Menggunakan Excel VBA

Pada bagian ini, kita akan mengganti teks dalam string acak untuk jumlah kemunculan yang berbeda dengan bantuan sebuah VBA kode.

Langkah-langkah :

➤ Ikuti Langkah-01 dari Metode-1 .

Ketik kode berikut ini.

 Sub Sub substitusi_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 1, 1) MsgBox updated_str End Sub 

Di sini, kita telah menyatakan full_txt_str dan updated_str sebagai String dan kemudian ditugaskan full_txt_str ke string teks acak- "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" Setelah itu, para Fungsi REPLACE digunakan untuk menggantikan Mobil bagian dari string acak ini dengan Sepeda , 1 digunakan di sini untuk memulai penggantian dari posisi 1 dari string ini, dan final 1 adalah untuk menghitung jumlah kejadian. Dengan menggunakan 1 sebagai angka penghitungan yang kita definisikan sebagai pengganti yang pertama Mobil Akhirnya, kita telah menetapkan string teks baru ini ke updated_str dan dengan kotak pesan ( MsgBox ) kita akan melihat hasilnya.

➤ Tekan F5 .

Setelah itu, a kotak pesan akan muncul dengan teks baru Sepeda di posisi pertama dari Mobil hanya.

Untuk mengganti dua contoh pertama dari Mobil dengan Sepeda gunakan kode berikut ini.

 Sub Sub substitusi_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 1, 2) MsgBox updated_str End Sub 

Di sini, 2 digunakan sebagai angka penghitungan untuk menggantikan dua contoh pertama dari Mobil dengan Sepeda .

Setelah menjalankan kode, Anda akan mendapatkan penggantian dua teks pertama Mobil dengan Sepeda .

Terapkan kode berikut untuk mengganti semua contoh teks Mobil .

 Sub Sub substitusi_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" updated_str = Replace(full_txt_str, "Mobil", "Sepeda", 1, 3) MsgBox updated_str End Sub 

Di sini, argumen terakhir dari Fungsi REPLACE adalah 3 yang merupakan angka penghitungan yang mengindikasikan penggantian semua Mobil dengan Sepeda dalam string teks.

➤ Tekan F5 .

Setelah itu, kita akan memiliki yang berikut ini kotak pesan dengan teks yang diganti Sepeda dalam string.

Bacaan Serupa

  • Cara Mengganti Teks dengan Carriage Return di Excel (4 Pendekatan Halus)
  • Excel VBA: Cara Menemukan dan Mengganti Teks di Dokumen Word
  • Cara Mengganti Teks setelah Karakter Tertentu di Excel (3 Metode)
  • Ganti Teks Sel Berdasarkan Kondisi di Excel (5 Metode Mudah)

Metode-03: Ganti Teks dalam String Acak dengan InputBox

Di sini, kita akan mengganti teks tertentu dari string acak dengan teks yang akan ditentukan oleh pengguna dengan bantuan Fungsi VBA InputBox .

Langkah-langkah :

➤ Ikuti Langkah-01 dari Metode-1 .

Ketik kode berikut ini.

 Sub Sub substitusi_dari_teks_3() Dim full_txt_str, new_txt, updated_str As String full_txt_str = "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" new_txt = InputBox("Tuliskan teks baru yang akan digantikan") updated_str = Replace(full_txt_str, "Mobil", new_txt) MsgBox updated_str End Sub 

Di sini, kita telah menyatakan full_txt_str , new_txt dan updated_str sebagai String dan kemudian ditugaskan full_txt_str ke string teks acak- "Seratus Mobil Lima Puluh Mobil Sepuluh Mobil" Untuk memiliki input yang ditentukan pengguna sebagai teks yang akan diganti dengan Mobil dalam string acak, kita telah menggunakan Fungsi InputBox dan kemudian menetapkan nilai ini ke new_txt Kemudian Fungsi REPLACE digunakan untuk menggantikan Mobil bagian dari string acak ini dengan new_txt Akhirnya, kita telah menetapkan string teks baru ini ke updated_str dan dengan kotak pesan ( MsgBox ) kita akan melihat hasilnya.

➤ Tekan F5 .

Setelah itu, sebuah Kotak Input akan muncul di mana Anda bisa memasukkan bagian teks apa pun yang ingin Anda miliki dalam string baru.

➤ Jenis Sepeda atau teks lain yang Anda inginkan, lalu tekan OK .

Akhirnya, Anda akan mendapatkan hasil berikut dengan string teks baru yang memiliki teks baru Sepeda pada posisi Mobil .

Baca Lebih Lanjut: Cara Mengganti Teks di Formula Excel (7 Cara Mudah)

Metode-04: Ganti Teks dalam Rentang String dengan Excel VBA

Di sini, kita akan menggantikan gmail bagian dari id email dengan domain di dalam Domain Baru dan untuk mengakumulasi id email baru, kami telah memasukkan kolom baru; Id Email Terakhir .

Langkah-langkah :

➤ Ikuti Langkah-01 dari Metode-1 .

Ketik kode berikut ini.

 Sub substitusi_of_text_4() For i = 4 To 13 If InStr(1, Cells(i, 4).Value, "gmail")> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, "gmail", Cells(i, 5).Value) Else Cells(i, 6).Value = "" End If Next i End Sub 

Di sini, kami telah menggunakan Untuk loop untuk mengeksekusi operasi dari Baris 4 untuk Baris 13 Dengan bantuan dari JIKA-MAKA pernyataan, kami telah memeriksa apakah id email dari Kolom D mengandung "gmail" atau tidak, dan untuk memenuhi kriteria ini, maka "gmail" bagian dari id email akan diganti dengan domain baru dari Kolom E untuk membuat id baru di Kolom F Jika tidak, Anda akan memiliki kosong di sel yang sesuai dari Kolom F .

➤ Tekan F5 .

Kemudian, Anda akan memiliki id email baru di dalam Id Email Terakhir kolom.

Baca Lebih Lanjut: Excel VBA untuk Menemukan dan Mengganti Teks dalam Kolom (2 Contoh)

Metode-05: Ganti Teks dalam Rentang String dengan Input Pengguna untuk Menemukan Teks

Anda dapat mengganti id email berikut dengan domain baru dan menyatakan apa yang akan diganti di id sebelumnya, input pengguna dapat digunakan dengan mengikuti metode ini.

Langkah-langkah :

➤ Ikuti Langkah-01 dari Metode-1 .

Ketik kode berikut ini.

 Sub substitusi_dari_teks_5() Dim partial_text As String partial_text = Application.InputBox("Masukkan string yang akan diganti") For i = 4 To 13 If InStr(1, Cells(i, 4).Value, LCase(partial_text))> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, LCase(partial_text), Cells(i, 5).Value) Else Cells(i, 6).Value = "" End If Next i End Sub 

Di sini, kita telah mendefinisikan partial_text sebagai String dan kemudian menugaskannya ke sebuah string yang akan diberikan oleh pengguna melalui Kotak Input .

Setelah itu, kami menggunakan Untuk loop untuk mengeksekusi operasi dari Baris 4 untuk Baris 13 dan menggunakan JIKA-MAKA pernyataan, kami memeriksa apakah id email dari Kolom D mengandung "gmail" atau tidak. Dan untuk memenuhi kriteria ini, maka "gmail" bagian dari id email akan diganti dengan domain baru dari Kolom E untuk membuat id baru di Kolom F Jika tidak, Anda akan memiliki kosong di sel yang sesuai dari Kolom F .

➤ Tekan F5 .

Setelah itu, Anda akan memiliki Kotak Input di mana Anda harus mengetikkan teks yang ingin Anda cari dalam rentang id email (di sini kami telah memasukkan gmail ) dan kemudian tekan OK .

Akhirnya, kita memiliki id email yang diperbarui di dalam Id Email Terakhir kolom.

Baca Lebih Lanjut: Temukan dan Ganti Teks dalam Rentang dengan Excel VBA (Makro dan UserForm)

Bagian Latihan

Untuk melakukan latihan sendiri, kami telah menyediakan Praktek seperti di bawah ini dalam lembar bernama Praktek . Silakan lakukan sendiri.

Kesimpulan

Pada artikel ini, kami mencoba membahas cara mengganti teks dalam string menggunakan Excel VBA Semoga bermanfaat bagi Anda. Jika Anda memiliki saran atau pertanyaan, jangan ragu untuk membagikannya di bagian komentar.

Hugh West adalah pelatih dan analis Excel yang sangat berpengalaman dengan pengalaman lebih dari 10 tahun di industri ini. Beliau meraih gelar Sarjana di bidang Akuntansi dan Keuangan dan gelar Master di bidang Administrasi Bisnis. Hugh memiliki hasrat untuk mengajar dan telah mengembangkan pendekatan pengajaran unik yang mudah diikuti dan dipahami. Pengetahuan ahlinya tentang Excel telah membantu ribuan siswa dan profesional di seluruh dunia meningkatkan keterampilan dan unggul dalam karier mereka. Melalui blognya, Hugh membagikan pengetahuannya kepada dunia, menawarkan tutorial Excel gratis dan pelatihan online untuk membantu individu dan bisnis mencapai potensi penuh mereka.