Vba: cara mengganti karakter dalam sebuah string


Anda dapat menggunakan metode Ganti() di VBA untuk mengganti karakter dalam sebuah string.

Metode ini menggunakan sintaks dasar berikut:

Ganti (ekspresi, temukan, ganti, mulai, hitung)

Emas:

  • ekspresi : String yang karakternya ingin Anda ganti
  • find : String yang akan dicari
  • replace : String yang akan digunakan sebagai pengganti
  • start ( opsional ) : Posisi awal dalam string yang akan dicari
  • count ( opsional ) : Jumlah penggantian yang harus dilakukan

Contoh berikut memperlihatkan cara menggunakan metode ini dalam praktik dengan daftar string berikut di Excel:

Contoh 1: Gunakan VBA untuk mengganti semua kemunculan karakter dalam string (peka huruf besar/kecil)

Katakanlah kita ingin mengganti “ini” dengan “ITU” di setiap string.

Kita dapat membuat makro berikut untuk melakukan ini:

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(Range(" A " & i), " this ", " THAT ")
Next i
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Kolom B menampilkan masing-masing string di kolom A, dengan setiap kemunculan “ini” diganti dengan “ITU”.

Perhatikan bahwa penggantian ini peka huruf besar-kecil .

Artinya, setiap kemunculan “ini” diganti tetapi setiap kemunculan “ini” dibiarkan saja.

Contoh 2: Gunakan VBA untuk mengganti semua kemunculan karakter dalam string (tidak peka huruf besar-kecil)

Katakanlah kita ingin mengganti “ini” (apa pun hurufnya) dengan “ITU” di setiap string.

Kita dapat membuat makro berikut untuk melakukan ini:

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", " THAT ")
Next i
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Kolom B menampilkan masing-masing string di kolom A, dengan setiap kemunculan “ini” diganti dengan “ITU”.

Perhatikan bahwa penggantian ini tidak peka huruf besar-kecil .

Artinya, setiap kemunculan “ini” (baik menggunakan huruf kapital atau tidak) diganti.

Kami dapat melakukan penggantian peka huruf besar-kecil ini dengan menggunakan metode LCase untuk terlebih dahulu mengonversi setiap string di kolom A menjadi huruf kecil sebelum mencari “ini” di setiap string.

Contoh 3: Gunakan VBA untuk Mengganti N Kemunculan Pertama Karakter dalam String

Misalkan kita hanya ingin mengganti kemunculan pertama “ini” (apa pun kasusnya) dengan “ITU” di setiap string.

Kita dapat membuat makro berikut untuk melakukan ini:

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", " THAT ", Count:=1)
Next i
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Kolom B menampilkan masing-masing string di kolom A dengan hanya kemunculan pertama “ini” yang diganti dengan “ITU”.

Perhatikan bahwa kami menggunakan Count:=1 untuk mengganti hanya kemunculan pertama dari string tertentu, tetapi Anda dapat mengganti 1 dengan nilai apa pun yang Anda inginkan untuk mengganti n kemunculan pertama dari string tertentu.

Catatan : Anda dapat menemukan dokumentasi lengkap untuk metode Ganti VBA di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya menggunakan VBA:

VBA: Cara menghitung kemunculan karakter dalam sebuah string
VBA: cara memeriksa apakah suatu string berisi string lain
VBA: Cara menghitung sel dengan teks tertentu

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *