Skip to content Skip to sidebar Skip to footer

Contoh Kode Macro Event: Mengaktifkan Sheet dalam Excel VBA

Contoh kode macro di bawah ini menjalankan event pada worksheet khusus dengan cara meng-klik tab sheet tersebut.

Sebagai contoh, Anda memiliki worksheet dengan pivot table berjumlah satu buah atau lebih di dalamnya, Anda ingin semua pivot table tersebut langsung diperbarui otomatis (tanpa harus me-refresh pivot table) ketika nilai dari sumber datanya diubah.

Mengingat pivot table hanya akan dapat diperbarui datanya jika melakukan refresh melalui menu Refresh dari ribbon PivotTable Tools > Analyze > Data atau dengan cara klik-kanan pivot table.

Gambar di bawah ini mempertunjukkan hasil akhirnya:


Event Worksheet_Activate dapat dicetuskan untuk menghasilkan keadaan tersebut di dalam worksheet.

Ikuti langkah-langkah berikut untuk membuat kode macronya:

1. Dalam Excel, klik kanan tab sheet berisi pivot table yang akan diuji-coba.

2. Pilih View Code.

3. Pada kotak pilihan Object (General) di atas module worksheet klik tanda panah di ujungnya.

4. Pilih Worksheet.

5. Pada kotak pilihan Procedure (Declarations) di atas module worksheet, klik tanda panahnya di ujungnya.

6. Pilih event Activate.

7. Ketik kode berikut tepat dibawah Private Sub Worksheet_Activate:

Dim a As Integer
For a = 1 To ActiveSheet.PivotTables.Count
ActiveSheet.PivotTables(a).PivotCache.Refresh
Next a

8. Kode lengkapnya menjadi seperti berikut:

Private Sub Worksheet_Activate()
Dim a As Integer
For a = 1 To ActiveSheet.PivotTables.Count
ActiveSheet.PivotTables(a).PivotCache.Refresh
Next a
End Sub

10. Ulangi langkah yang sama dari awal, jika terdapat pivot table pada sheet lain.

11. Tekan Alt+F11 untuk kembali ke jendela Excel.

12. Silakan ubah nilai data dari sumber datanya lalu amati perubahan pada semua sheet yang berisi pivot table.

Demikian pembahasan tentang event Worksheet_Activate dalam macro VBA Excel.

Selamat mempraktikkan dan semoga postingan ini bermanfaat.