Buku Kerja VBA - Contoh untuk menggunakan Objek Buku Kerja Excel VBA

Buku Kerja VBA Excel

VBA Workbook adalah objek yang merupakan bagian dari kumpulan objek Buku Kerja. Kita dengan mudah melihat perbedaan bagian dari kumpulan objek dan objek itu sendiri, kata jamak dari “Workbooks” merujuk pada banyak “Workbook”. Di VBA, kami memiliki beberapa objek lain seperti Worksheets, Cells & Ranges, Charts, dan Shapes.

Dalam file excel platform excel disebut sebagai "Workbook," terutama di VBA. Kami tidak pernah menyebutnya sebagai file; sebaliknya, kami menyebutnya "Buku Kerja".

Dengan merujuk ke buku kerja, kita bisa melakukan semua tugas yang terkait dengannya. Beberapa tugas penting adalah "Buka Buku Kerja", "Simpan Buku Kerja", "Simpan Sebagai Buku Kerja", dan "Tutup Buku Kerja". Kita bisa memilih, mengaktifkan workbook yang dibuka.

Sintaksis

Sekarang, lihat apa sintaks dari Buku Kerja.

Indeks tidak lain adalah buku kerja yang ingin Anda pilih. Kita bisa merujuk ke buku kerja dengan nomor buku kerja atau dengan nama buku kerja.

Penggunaan Kode Objek Buku Kerja VBA

Contoh 1

Misalnya, saya memiliki dua file yang terbuka sekarang. Nama buku kerja pertama adalah "File 1" dan nama buku kerja kedua adalah "File 2".

Sekarang saya menulis kode di file ketiga. Dari file ini, saya ingin mengaktifkan buku kerja bernama "File 1".

Langkah 1: Mulai makro dengan membuat subprocedure VBA.

Kode:

Sub Workbook_Example1 () End Sub

Langkah 2: Sekarang pilih objek buku kerja.

Langkah 3: Sekarang, masuk ke workbook yang ingin kita aktifkan.

Kode:

Sub Buku Kerja_Contoh1 () Buku Kerja ("File 1 End Sub

Langkah 4: Setelah memasukkan nama buku kerja, kita juga perlu memasukkan ekstensi file. Saya telah menyimpan workbook ini sebagai workbook biasa, yaitu workbook “xlsx” .

Kode:

Sub Buku Kerja_Contoh1 () Buku Kerja ("File 1.xlsx") End Sub

Langkah 5: Sekarang, kita perlu memutuskan apa yang ingin kita lakukan dengan buku kerja ini. Masukkan titik untuk melihat semua opsi yang tersedia dengan buku kerja ini.

Langkah 6: Sekarang, kita perlu mengaktifkan workbook, pilih metode sebagai "Activate."

Kode:

Sub Workbook_Example1 () Workbooks ("File 1.xlsx"). Aktifkan End Sub

Tidak masalah di buku kerja mana Anda berada. Ini akan mengaktifkan buku kerja yang ditentukan.

Segera setelah Anda memilih buku kerja, itu menjadi "Buku Kerja Aktif."

Contoh # 2 - Masukkan Nilai di Buku Kerja

Seperti yang saya katakan segera setelah Anda memilih buku kerja, itu menjadi Buku Kerja Aktif. Menggunakan Active Workbook, kita dapat mereferensikan sel.

Di buku kerja aktif, kita perlu memilih lembar berdasarkan namanya, atau kita menggunakan kata Lembar Aktif.

Di lembar kerja aktif, kita perlu memilih sel dengan menggunakan objek Range.

Kode:

Sub Workbook_Example1 () Workbooks ("File 1.xlsx"). Aktifkan ActiveWorkbook.ActiveSheet.Range ("A1"). Value = "Hello" End Sub

Ketika Anda menjalankan kode ini menggunakan tombol F5 atau secara manual, ini akan memasukkan kata "Halo" di sel A1 di buku kerja "File 1.xlsx".

Kami juga dapat menggunakan kode di bawah ini untuk melakukan pekerjaan yang sama.

Kode:

Sub Workbook_Example1 () Workbooks ("File 1.xlsx"). ActiveSheet.Range ("A1"). Value = "Hello" End Sub

Ini juga akan memasukkan kata "Halo" ke buku kerja "File 1.xlsx".

Contoh # 3 - Tetapkan Buku Kerja ke Variabel

Kita juga dapat menetapkan tipe data sebagai "buku kerja" ke variabel yang dideklarasikan. Deklarasikan variabel sebagai Workbook.

Kode:

Sub Buku Kerja_Contoh2 ()

Redupkan WB Sebagai Buku Kerja

Akhiri Sub

Sekarang kita perlu menyetel variabel objek ke nama buku kerja dengan menggunakan kata "Set."

Kode:

Sub Buku Kerja_Contoh2 () Redupkan WB Sebagai Kumpulan Buku Kerja WB = Buku Kerja ("File 1.xlsx") End Sub

Mulai sekarang dan seterusnya, variabel "WB" menyimpan nama buku kerja "File 1.xlsx".

Menggunakan nama variabel, kita bisa memasukkan kata-kata.

Kode:

Sub Workbook_Example2 () Redupkan WB As Workbook Set WB = Workbooks ("File 1.xlsx") WB.Worksheets ("Sheet1"). Range ("A1") = "Hello" WB.Worksheets ("Sheet1"). Range ( "B1") = "Good" WB.Worksheets ("Sheet1"). Range ("C1") = "Pagi" End Sub

Jalankan kode ini secara manual atau gunakan tombol pintas F5 dan lihat hasilnya, seperti yang ditunjukkan pada gambar di bawah ini.

WB.Worksheets ("Sheet1"). Range ("A1") = "Halo"

Di sini WB mereferensikan buku kerja, di buku kerja itu, kami mereferensikan lembar kerja Sheet1 dengan menggunakan objek Lembar Kerja. Di sel lembar kerja itu, A1 sama dengan nilai "Halo".

Kami juga dapat mereferensikan buku kerja dengan nomor indeks. Misalnya, lihat kode di bawah ini.

Kode:

Sub Workbook_Example3() Workbooks(1).Activate Workbooks(2).Activate Workbooks(3).Activate End Sub

Here Workbooks (1) means whichever the workbook first on the list, like this similarly Workbooks (2) refers to the second workbook, and Workbooks (3) refers to the third workbook.

The main problem with this index number referencing is we don’t know exactly which workbook activated. It is dangerous to use index numbers.

Example #4 - For Each Loop for Workbook Object

As I told in the beginning, the workbook is a collection object of Workbooks in VBA. Whenever we want to perform the same kind of activity for all the opened workbooks, we need to use For Each loop in VBA.

For Each Loop is the loop for all the objects in VBA. Use the below code to save all the opened workbooks.

Code:

Sub Save_All_Workbooks () Redupkan WB Sebagai Buku Kerja Untuk Setiap WB Di Buku Kerja WB. Simpan Berikutnya WB End Sub

Saat Anda menjalankan kode ini melalui tombol F5 atau secara manual, maka muncul Pop-up, yang meminta untuk menyimpan buku kerja. Klik Ok untuk menyimpan.

Gunakan kode di bawah ini untuk menutup semua buku kerja kecuali yang sedang Anda kerjakan.

Kode:

Sub Close_All_Workbooks () Redupkan WB Sebagai Workbook Untuk Setiap WB Di Workbooks Jika WB. Beri Nama ThisWorkbook.Name Then WB. Close End Jika Berikutnya WB End Sub

Jendela pop-up muncul sebelum menutup buku kerja.

Artikel yang menarik...