Vba: cara menghapus karakter dari string
Anda dapat menggunakan metode Ganti() di VBA untuk menghapus karakter dari sebuah string.
Contoh berikut memperlihatkan cara menggunakan metode ini dalam praktik dengan daftar string berikut di Excel:
Contoh 1: Gunakan VBA untuk menghapus semua kemunculan karakter dalam string (peka huruf besar/kecil)
Katakanlah kita ingin menghapus “ini” dari setiap string.
Kita dapat membuat makro berikut untuk melakukan ini:
Sub RemoveChar() Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(Range(" A " & i), " this ", "") Next i End Sub
Saat kami menjalankan makro ini, kami menerima keluaran berikut:
Kolom B menampilkan setiap string di kolom A dengan setiap kemunculan “ini” dihapus.
Perhatikan bahwa makro ini peka huruf besar-kecil .
Artinya, setiap kemunculan “ini” dihilangkan tetapi setiap kemunculan “ini” dibiarkan saja.
Contoh 2: Gunakan VBA untuk menghapus semua kemunculan karakter dalam string (tidak peka huruf besar-kecil)
Katakanlah kita ingin menghapus “ini” (apa pun hurufnya) dari setiap string.
Kita dapat membuat makro berikut untuk melakukan ini:
SubRemoveChar () Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "") Next i End Sub
Saat kami menjalankan makro ini, kami menerima keluaran berikut:
Kolom B menampilkan setiap string di kolom A dengan setiap kemunculan “ini” dihapus.
Perhatikan bahwa penggantian ini tidak peka huruf besar-kecil .
Artinya, setiap kemunculan “ini” (baik menggunakan huruf kapital atau tidak) dihilangkan.
Kami dapat mencapai hal 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 menghapus N kemunculan karakter pertama dalam sebuah string
Katakanlah kita hanya ingin menghapus kemunculan pertama “ini” (apa pun kasusnya) dari setiap string.
Kita dapat membuat makro berikut untuk melakukan ini:
SubRemoveChar () Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "", 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 dihapus.
Perhatikan bahwa kami menggunakan Count:=1 untuk menghapus hanya kemunculan pertama dari string tertentu, namun Anda dapat mengganti 1 dengan nilai apa pun yang ingin Anda hapus sebagai ganti 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