Tali Ganti VBA

Excel VBA Ganti Rentetan

Ganti ialah fungsi Lembaran Kerja dan juga fungsi VBA. Fungsi ini membantu kita untuk mengganti perkataan tertentu dari rentetan dengan rentetan yang lain. Ia berfungsi serupa dengan fungsi Pengganti di VBA.

Semasa berurusan dengan rentetan ujian atau nilai data teks, adalah sesuatu yang jelas untuk mengganti atau mengganti sesuatu dengan yang lain, menggabungkan dua data sel menjadi satu atau membelah satu data sel menjadi beberapa perkara. Ini semua tugas biasa yang kita lakukan hari demi hari di tempat kerja kita.

Jadi, bagaimana kita mengganti satu perkataan dalam rentetan dengan kata lain? Sebagai contoh, jika rentetan adalah "India adalah negara yang sedang berkembang dan India di Negara Asia", dari tali ini kita perlu mengganti kata "India" dan diubah menjadi "Bharath".

Ini mungkin dilakukan dengan menggunakan fungsi Ganti. Dalam artikel ini, kami akan menunjukkan kepada anda cara mengganti rentetan dalam pengekodan VBA.

Ganti Fungsi

  • Ungkapan: Ini tidak lain hanyalah nilai rentetan asli dari mana kami berusaha untuk mengganti sesuatu dengan sesuatu. Sebagai contoh di bawah ini adalah rentetan ungkapan - "India adalah negara yang sedang membangun dan India di Negara Asia"
  • Cari String: Apakah rentetan yang cuba kita ganti. Contohnya dalam rentetan Ekspresi yang kami cuba ganti perkataan "India".
  • Ganti String: Apakah tali ganti yang kita ganti dengan Find String dengan? Jadi, dalam kes ini, kami berusaha mengganti kata "India" dengan "Bharath".
  • [Mula]: Ini adalah parameter pilihan. Dalam rentetan di atas (Ekspresi) kita mempunyai dua kata "India" jadi dari posisi Find String mana kita perlu memulai proses penggantian. Contohnya, jika kita mengatakan 2, perkataan itu akan menggantikan perkataan "India" dari kedudukan kedua dan seterusnya.
  • [Hitung]: Jika Rentetan Cari muncul berkali-kali dalam Ekspresi maka berapa banyak perkataan yang perlu kita ganti.

Contohnya, jika perkataan "India" muncul 5 kali dan jika anda memberikan kiraannya sebagai 3, maka perkataan itu hanya akan menggantikan 3 perkataan "India" yang pertama.

Bagaimana Mengganti Teks dalam Rentetan menggunakan VBA?

Anda boleh memuat turun Templat Ganti String Excel VBA ini di sini - Templat Ganti Ganti VBA Excel

Contoh # 1

Sekarang kita akan cuba mengganti kata "India" dengan "Bharath" dari nilai rentetan di bawah.

"India adalah negara membangun dan India di Negara Asia"

Pertama, mulakan prosedur makro excel sekarang.

Kod:

 Sub Ganti_Contoh () Akhir Sub 

Tentukan pemboleh ubah VBA sebagai String.

Kod:

 Sub Replace_Contoh () Dim NewString Sebagai String End Sub 

Dalam pemboleh ubah ini, kami akan menunjukkan nilai rentetan baru setelah mengganti kata "India" dengan "Bharath". Untuk pemboleh ubah ini buka fungsi Ganti.

Argumen pertama fungsi ini adalah "Ekspresi" iaitu dari rentetan mana kita berusaha mengganti kata, jadi salin dan tempelkan rentetan "India adalah negara yang sedang berkembang dan India di Negara Asia".

Argumen seterusnya adalah "Find String" iaitu perkataan mana yang perlu kita ganti iaitu "India".

Argumen seterusnya adalah "Replace String" iaitu dengan rentetan mana kita perlu mengganti kata "India" iaitu "Bharath"

Baiklah, hingga sekarang abaikan hujah yang masih ada. Sekarang tunjukkan hasilnya di kotak mesej.

Kod:

 Sub Replace_Example () Dim NewString As String NewString = Replace ("India adalah negara yang sedang membangun dan India adalah Negara Asia", "India", "Bharath") MsgBox NewString End Sub 

Mari jalankan kod menggunakan kekunci F5 atau secara manual dan lihat hasil rentetan baru.

Ok, lihat hasil di atas di mana sahaja kita mempunyai perkataan "India" ia telah diganti dengan kata "Bharath"

Contoh # 2

Sekarang kita akan melihat bagaimana menggunakan kod yang sama dengan pemboleh ubah. Lihat kod di bawah.

Kod:

 Sub Replace_Example1 () Dim NewString Sebagai String Dim MyString Sebagai String Dim FindString As String Dim ReplaceString As String MyString = "India adalah negara yang sedang membangun dan India adalah Negara Asia" FindString = "India" ReplaceString = "Bharath" NewString = Replace (MyString , FindString, ReplaceString) MsgBox NewString End Sub 

Dalam kod di atas, saya telah menyatakan tiga pemboleh ubah tambahan.

 Dim MyString Sebagai String Dim FindString Sebagai String Dim ReplaceString Sebagai String 

Untuk pemboleh ubah ini, saya telah memberikan nilai, bukannya memberikan String Ekspresi, Cari String, dan String Ganti, kami hanya akan membekalkan pemboleh ubah ke fungsi Ganti.

Kod ini juga memberikan hasil yang sama tetapi satu-satunya perbezaan adalah kita telah menggunakan pemboleh ubah dan bukannya pembekalan nilai langsung ke fungsi tersebut.

Contoh # 3

Andaikan anda ingin mengganti perkataan "India" hanya dari posisi kedua maka kita perlu menggunakan parameter fungsi Ganti ["Mula"]. Lihat kod di bawah untuk maklumat anda.

Kod:

 Sub Replace_Example2 () Dim NewString Sebagai String Dim MyString Sebagai String Dim FindString As String Dim ReplaceString As String MyString = "India adalah negara yang sedang membangun dan India adalah Negara Asia" FindString = "India" ReplaceString = "Bharath" NewString = Replace (MyString , FindString, ReplaceString, Start: = 34) MsgBox NewString End Sub 

Hanya satu perkara tambahan yang telah kita tambahkan dari kod sebelumnya adalah parameter "Mula" sebagai 34. Sekarang jalankan kod dan lihat hasilnya.

Sekarang kita hanya dapat melihat rentetan setelah watak ke-34 dari string dengan "India" diganti dengan "Bharath".

Contoh # 4

Sekarang sebagai contoh, jika kita ingin mengganti hanya kejadian pertama dari kata "India" ke "Bharath" maka kita perlu menggunakan parameter ["Hitung"] fungsi Ganti.

Berikut adalah kod untuk anda.

Kod:

 Sub Replace_Example3 () Dim NewString Sebagai String Dim MyString Sebagai String Dim FindString As String Dim ReplaceString As String MyString = "India adalah negara yang sedang membangun dan India adalah Negara Asia" FindString = "India" ReplaceString = "Bharath" NewString = Replace (MyString , FindString, ReplaceString, Count: = 1) MsgBox NewString End Sub 

Jalankan kod secara manual atau melalui kekunci F5 dan lihat hasilnya.

Seperti yang anda lihat di atas, perkataan ini hanya menggantikan kejadian pertama kata "India" menjadi "Bharath" dan contoh kedua tetap sama.

Perkara Yang Perlu Diingati Di Sini

  • Replace is a string function family in VBA.
  • In VBA, the replace function replaces all the supplied words with replaced string if the count parameter is not specified.
  • The start parameter will delete the number of characters supplied and show the remaining result.