Teks VBA

Teks adalah fungsi lembar kerja di excel tetapi dapat juga digunakan di VBA ketika menggunakan rentang properti dengannya, fungsi untuk fungsi ini mirip dengan fungsi lembaran kerja dan memerlukan jumlah argumen yang sama yang merupakan nilai yang harus ada ditukar dan format nombor yang ditentukan.

Fungsi Teks Excel VBA

TEXT adalah fungsi yang tersedia dengan lembaran kerja tetapi sayangnya, ini bukan fungsi terbina dalam Excel VBA. Untuk mengakses fungsi ini, kita perlu menggunakan objek kelas fungsi lembaran kerja di VBA. Fungsi teks di Excel menukar nilai ke format nombor yang ditentukan.

Salah satu masalah dengan fungsi ini adalah hujah. Setiap kali kita menggunakan kelas fungsi lembaran kerja VBA, kita tidak dapat melihat sintaks potongan yang jelas seperti di lembaran kerja kita. Hanya tertulis "Arg1" dan "Arg2".

  • Arg1 adalah nilai yang kita perlukan untuk menerapkan pemformatan.
  • Arg2 adalah format yang perlu kita terapkan dan kita perlu menentukan kod pemformatan.

Contoh Fungsi Teks VBA di Excel

Berikut adalah contoh Fungsi Teks Excel VBA.

Anda boleh memuat turun Templat Teks Excel VBA ini di sini - Templat Teks VBA VBA

Contoh # 1

Mari saya tunjukkan contoh ringkas TEKS dalam VBA Excel. Lihat kod di bawah dalam Visual Basic.

Kod:

 Sub Teks_Contoh1 () Dim FormattingValue As String Dim FormattingResult As String FormattingValue = 0.564 FormattingResult = WorksheetFunction.Text (FormattingValue, "hh: mm: ss AM / PM") MsgBox FormattingResult End Sub 

Pertama saya telah menyatakan dua pemboleh ubah sebagai rentetan dalam VBA

 Dim FormattingValue As String Dim FormattingHasil As String 

Untuk pemboleh ubah pertama, saya telah menetapkan nombor pemformatan yang perlu kita format.

FormattingValue = 0.564

Sekarang untuk pemboleh ubah lain, saya telah menetapkan fungsi TEXT.

FormattingResult = WorksheetFunction.Text (FormattingValue, "hh: mm: ss AM / PM")

Sekiranya anda memerhatikan saya telah menerapkan pemformatan waktu iaitu "hh: mm: ss AM / PM"

Akhirnya saya telah menggunakan kotak mesej VBA untuk menunjukkan hasilnya.

MsgBox FormattingResult

Semasa saya menjalankan kod TEXT fungsi akan menerapkan format waktu ke nombor 0,564 dan memaparkan hasilnya seperti di bawah.

Jadi, kami mendapat masa sebagai " 01:32:10 PM ".

Contoh # 2

Sama seperti contoh format tarikh, kami telah membuat beberapa perubahan kecil dalam contoh ini. Berikut adalah kodnya.

Kod:

 Sub Teks_Contoh2 () Dim FormattingValue As String Dim FormattingResult As String FormattingValue = 43585 FormattingResult = WorksheetFunction.Text (FormattingValue, "DD-MMM-YYYY") MsgBox FormattingResult End Sub 

Dari kod sebelumnya, saya telah mengubah Nilai Pemformatan dari 0,565 menjadi 43585 dan mengubah gaya pemformatan sebagai "DD-MMM-YYYY".

Ini akan menggunakan pemformatan ke nombor 43585 sebagai tarikh dan hasilnya adalah seperti berikut.

Terapkan Pemformatan ke Sel

Kami telah melihat contoh-contoh sederhana, sekarang lihat bagaimana bekerja dengan sel-sel dalam lembaran kerja. Untuk contoh ini lihat data di bawah.

Untuk semua nombor ini kita perlu menggunakan format masa. Untuk ini kod di bawah ini akan menggunakan pemformatan.

Kod:

 Sub Teks_Contoh3 () Dim k Sebagai Integer Untuk k = 1 Hingga 10 Sel (k, 2). Nilai = Lembaran KerjaFungsi.Teks (Sel (k, 1). Nilai, "hh: mm: ss AM / PM") Seterusnya k Akhir Sub 

Kod ini akan melalui 10 sel dan menerapkan pemformatan seperti di bawah.

Seperti ini, dengan menggunakan fungsi VBA TEXT kita dapat menerapkan pemformatan nombor ke sel.