Buku Kerja Ini VBA - Bagaimana Menggunakan PropertiWorkbook ini di Excel VBA?

Buku Kerja Excel VBA ini

VBA ThisWorkbook bermaksud buku kerja di mana kita menulis kod excel. Contohnya, jika anda bekerja di buku kerja bernama "Sales 2019.xlsx", kami biasanya merujuk kepada buku kerja seperti ini.

Buku kerja ("Jualan 2019.xlsx"). Aktifkan

Kod tersebut akan mengaktifkan buku kerja yang diberi nama "Sales 2019.xlsx".

Daripada menulis seperti ini, kita hanya boleh menulis kod VBA di bawah.

Buku Kerja Ini. Aktifkan '

Di sini ThisWorkbook merujuk kepada buku kerja di mana kita menulis kodnya. Dengan merujuk kepada perkataan ini, kita dapat melaksanakan semua tugas dalam buku kerja semasa dan mengelakkan kod yang panjang dengan nama buku kerja yang lengkap.

Saya pasti anda juga pernah melihat perkataan "Buku Kerja Aktif" semasa anda merujuk kepada kod yang lain. Ini juga merupakan salah satu perkataan yang sering digunakan dalam pengekodan. Kita akan melihat apa perbezaan kedua-dua perkataan ini dalam asas.

Bekerja dengan ThisWorkbook dalam Excel VBA

Kata rujukan "ThisWorkbook" lebih dipercayai daripada kelayakan objek Workbooks. Salah satu kecenderungan manusia adalah dengan salah menaip nama buku kerja, yang mengakibatkan melemparkan mesej kesalahan.

Satu sebab yang lebih penting mengapa VBA ThisWorkbook lebih dipercayai kerana sekiranya sekiranya kita menukar nama buku kerja, kita perlu mengubah kodnya kerana kita telah menggunakan perkataan "ThisWorkbook."

Jadi, ThisWorkbook lebih selamat digunakan untuk merujuk kepada buku kerja di mana kita menulis kodnya.

Contoh # 1

Kita akan melihat beberapa contoh di mana kita boleh menggunakan perkataan ThisWorkbook di excel VBA. Kod berikut akan mencetak nama buku kerja.

Kod:

Sub TWB_Example1 () Dim WBName As String WBName = ThisWorkbook.Name MsgBox WBName End Sub

Apabila anda menjalankan kod secara manual atau menggunakan kekunci F5, kod di atas akan menunjukkan nama buku kerja di kotak mesej di VBA.

Contoh # 2

Daripada menggunakan kata "Buku Kerja Ini", kita dapat menggunakan pemboleh ubah untuk menetapkan rujukan buku kerja dan bahkan mengurangkan panjang kod secara drastik di VBA. Contohnya, lihat dahulu kod di bawah.

Kod:

Sub TWB_Contoh2 () ThisWorkbook.Aktifkan ThisWorkbook.Worksheets ("Sheet1"). Aktifkan ThisWorkbook.Save ThisWorkbook.Close ThisWorkbook.SaveAs End Sub

Kod di atas telah menggunakan "ThisWorkbook" di setiap baris kod. Betapa sukarnya menaip perkataan itu setiap masa. Jadi, kita dapat meminimumkan ini dengan menggunakan pemboleh ubah.

Sekarang, lihat kod di bawah dengan pemboleh ubah.

Kod:

Sub TWB_Contoh2 () Dim Wb Sebagai Set Buku Kerja Wb = ThisWorkbook Wb. Aktifkan Wb.Worksheets ("Sheet1"). Aktifkan Wb.Save Wb.Close Wb.SaveAs End Sub

Nampak cantik, bukan ??

Izinkan saya menerangkan kodnya kepada anda semua.

Pertama, saya telah menyatakan pemboleh ubah sebagai objek Buku Kerja.

Dim Wb Sebagai Buku Kerja

Oleh kerana ini adalah pemboleh ubah objek, kita perlu menetapkan rujukan ke buku kerja tertentu. Oleh itu, saya telah menggunakan rujukan "ThisWorkbook".

Tetapkan Wb = ThisWorkbook

Sekarang pemboleh ubah "Wb" dirujuk ke buku kerja di mana kita sedang menulis kodnya pada masa ini. Dari sini untuk meneruskan prosedur, kita tidak perlu menggunakan kata "ThisWorkbook" sebagai gantinya, kita dapat menggunakan pemboleh ubah "Wb."

Buku Kerja Aktif vs Buku Kerja Ini di Excel VBA

Seperti yang saya ceritakan pada awal artikel, banyak pengekod menggunakan perkataan Active Workbook & ThisWorkbook sangat kerap dalam pengekodan VBA mereka. Sebagai pembaca atau pelajar baru, tidak mudah untuk memahami kedua-duanya. Oleh itu, izinkan saya menjelaskan kepada anda beberapa perbezaan.

Perbezaan # 1: Makna

  • Buku Kerja Aktif: Buku Kerja Aktif tidak semestinya buku kerja di mana kita sedang menulis kod pada masa ini. Sekiranya anda mempunyai banyak buku kerja yang dibuka dan mana-mana buku kerja yang dapat dilihat di skrin anda dianggap sebagai Buku Kerja Aktif .
  • ThisWorkbook: ThisWorkbook selalu menjadi buku kerja tempat kami menulis kod ketika ini.

Perbezaan 2: Kesalahan Kesalahan

  • Buku Kerja Aktif: Menggunakan Aktif dalam pengekodan boleh menyebabkan banyak kesilapan dan kekeliruan kerana kita tidak pernah tahu buku kerja mana yang aktif kecuali kita menyebut buku kerja untuk diaktifkan sebelum menggunakan kata Buku Kerja Aktif.
  • Buku Kerja Ini: Buku Kerja ini tidak boleh salah kerana tidak kira buku kerja mana yang aktif. Selalu mengambil rujukan buku kerja di mana kita menulis kodnya.

Artikel menarik...