Tampilkan postingan dengan label contoh vba excel. Tampilkan semua postingan
Tampilkan postingan dengan label contoh vba excel. Tampilkan semua postingan

Sabtu, 27 November 2021

Membuat dan Menghapus Hyperlink

Hyperlink sangat diperlukan untuk memudakan navigasi data dalam sebuah workbook. Biasanya kita membuat hyperlink yang menghubungkan sheet rekapitulasi dengan sheet detail. Kita juga biasa memanfaatkan hyperlink untuk menghubungkan sheet Daftar isi dengan Sheet - Sheet lainnya yang ada dalam workbook. Ada kalanya, karena alasan tertentu hyperlink tidak diperlukan dan harus di hapus.

Bagaimana biasanya kamu membuat hyperlink di excel? dan bagaimana cara menghapus hyperlink? Adakah cara yang tidak biasa untuk membuat dan menghapus hyperlink? Contoh-contoh code VBA berikut mudah-mudahan dapat membantu kamu dalam membuat dan menghapus hyperlink di Excel dengan lebih efisien.


1. Membuat Hyperlink Bolak-Balik Antar Sel Berisi Text Yang Sama Dalam Satu Workbook (file excel)


Prosedur ini sangat berguna bila kamu ingin membuat tautan secara cepat antar range data. Misalnya antara data rekapitulasi dengan data detail. Contoh macro ini bekerja dengan mengkoleksi sel berisi text yang ada di range pertama, kemudian mencari sel yang berisi text yang sama di range kedua. Apabila ketemu maka langsung dibuat tautannya dari sel di range pertam menuju sel di range kedua, dan proses sebaliknya, sehingga terjadilan hyperlink bolak - balik.

Untuk lebih mudah memahami prosedur ini, lebih baik langsung dicoba copas code di bawah ini ke workbook macro milik kamu dan langsung eksekusi (Run).


Ketika macro dijalankan (Run), maka kamu akan diminta untuk memilih range pertama. Pastikan range pertama terdiri dari 1 kolom, kemudian selanjutnya kamu juga akan diminta memilih range ke-2. Juga pastikan range yang kamu pilih terdiri atas 1 kolom. Jika dalam kedua range tersebut ada sel berisi text yang sama maka otomatis akan terbuat tautan bolak-balik.


2. Membuat Daftar Isi Yang Otomatis Link ke Semua Sheet

Nah contoh kode macro  yang ini buat kamu yang tidak mau repot-repot menambah tautan antar daftar isi dengan sheet setiap kali kamu menambahkan sheet baru. Langsung di copy paste saja gaes, code dibawah...



Tunggu sebentar...!! code di atas ternyata belum cukup untuk membuatnya bekerja secara otomatis. Supaya pembuatan link bekerja otomatis, maka kamu harus menempatkan sebuah code tambahan pada modul worksheet yang kamu tetapkan sebagai sheet daftar isi. Silahkan copas code berikut:



Dengan tambahan kode ini maka setiap kali kamu mengaktifkan atau beralih ke sheet yang kamu tentukan sebagai daftar isi, maka secara otomatis, microsoft excel akan menjalankan prosedur buatDaftarSheetDgnHyperlink. Akibatnya setiap kamu menambah sheet baru dan kemudian kamu cek sheet daftar isi maka kamu akan melihat tahutan baru tiba-tiba muncul. Selain itu dari Sheet yang baru kamu buat juga akan muncul tautan balik yang mengarah ke sheet daftar isi.


3. Menghapus Semua Hyperlink dalam Sheet dengan Model Standar

Selain membuat hyerlink. Kita juga perlu tahu bagaimana caranya menghapus hyperlink. Contoh code berikut dapat digunakan untuk menghapus semua hyperlinks dalam sheet aktif.



Prosedur yang diadopsi oleh kode di atas merupakan model remove hyperlink standar yang biasa dilakukan secara manual (klik kanan --> remove hyperlink). Pada saat kita menghapus hyperlink dengan tehnik ini, maka format sel akan berubah. Oleh karena itu sebagai solusinya kita bisa menggunakan contoh code VBA berikutnya:


4. Menghapus Semua Hyperlink Dalam Sheet Tanpa Merubah Format

Langsung saja dicopy paste codenya gaes...:



Nah dengan menggunakan code di atas, kamu tidak perlu khawatir format sel berubah. Prosedur ini sebenarnya mengambil konsep ketika kamu menghapus konten sel secara manual. Selain konten yang terhapus maka hyperlinknya juga terhapus, tetapi formatnya tidak terhapus. Ketika kamu mengetik kembali pada sel yang sudah dihapus kontennya tadi, maka hasilnya formatnya akan sama dengan keadaan sebelum kamu hapus, tetapi hyperlinknya sudah tidak ada.


5. Menghapus Semua Hyperlink dalam Range Terpilih Tanpa Merubah Format


Prosedur nomor 4 apabila dijalankan akan menghapus semua hyperlink yang ada dalam sheet yang sedang aktif. Jika kamu hanya ingin menghapus hyperling dalam range tertentu (range yang dipilih / higlight) maka gunakan code berikut:




...

Itulah beberapa contoh kode VBA yang dapat kamu gunakan untuk membuat dan menghapus hyperlink.

Jika teman-teman ada saran atau koreksi, jangan ragu untuk tinggalkan komentar.

Teman-teman tertarik untuk mendapatkan contoh-contoh kode VBA lainnya? Silahkan klik link di bawah ini.
Salam .... 😎😎😎

Jumat, 26 November 2021

Workbook Add & Close

Membuat / menambah workbook baru di excel biasanya dengan cara klik tab File --> New, atau dengan menekan key shortcut Ctrl  + N. Metode manual tersebut hanya menambah satu workbook saja per sekali eksekusi. Kamu bosan dengan metode itu-itu saja? Yok kita coba dengan menggunakan macro / vba. Tidak perlu mikir panjang bagaimana cara bikinnya. Tinggal copas saja gaes...😁😁😁


1. Membuat / Menambah Beberapa Workbook Sekaligus

Menambah beberapa workbook sekaligus sangat mudah dilakukan pake macro. Silahkan dicopy code nya Om.. dan jalankan di workbooknya si Oom...


Contoh code di atas membatasi penambahan workbook maksimal sekaligus 5. Kenapa dibatasi ? karena kalau kebanyakan tambah workbook juga bisa berabe..😅😅


2. Close Semua Workbook Kecuali Aku

Tadi sudah buat workbook banyak sekaligus. Sekarang bagaimana close workbook yang terlanjur dibuat. Kalau kamu close satu per satu pasti melelahkan dan menjengkelkan bukan. Tenang saja, kita masih bisa bermain-main dengan code macro. Gunakan code berikut untuk close semua workbook kecuali Aku.

Note: 

- Aku artinya adalah workbook dimana code ini ditempatkan. Kamu tentunya tidak mau workbook code yang kamu sayangi ikut ter-close bukan..?

- Perlu hati-hati bahwa code diatas meng-close workbook tanpa melakukan proses Save, sehingga semua perubahaan pada workbook-workbook tersebut tidak akan tersave dengan prosedur ini, kecuali kamu sudah melakukan Save terlebih dahulu secara manual.


3. Close Semua Workboook Kecuali Aku dan WB Aktif

Sedikit modifikasi, bila kamu ingin meng-close semua workbook kecuali workbook tempat code berada dan workbook yang sedang aktif.


Close Semua WB Kosong Kecuali Aku


Nah kalau yang ini akan memaksa close semua workbook yang kosong. Daripada menuhin memory, lebih baik di close saja kan? Proses Close juga tidak perlu sambil di Save. Namanya juga workbook kosong. Tidak ada gunanya juga di Save.



Itulah Gaes... Beberapa contoh VBA praktis yang bisa kamu gunakan langsung untuk menambah dan close workbook.

Ada saran/koreksi?? Jangan segan untuk tinggalkan komentar.

Jika kamu tertarik, cek juga contoh code VBA lainnya, semuanya tinggal copy paste:

Kamis, 25 November 2021

Mengurutkan Sheet

Urutan sheet tidak beraturan? Capek mengurutkannya secara manual? jangan khawatir !! Kamu bisa mengurutkan / sortir sheet secara cepat menggunakan makro. Ga perlu mikir panjang, tinggal copas  saja kode - kode ini ke workbook berisi kumpulan makro milik kamu.

1. Mengurutkan Sheet Sesuai Alfa Numerik (Alfabet dan Angka)


Jika urutan sheet tidak karuan, apalagi jumlah sheetnya bejibun alias banyak, yang bila diukur panjang tab sheetnya bisa bermeter-meter, maka mengurutkan sheet secara manual pasti sangat melelahkan. Untungnya ada code VBA yang sangat membantu untuk mengatasi masalah ini. 

Menyusun sheet sesuai urutan angka dari terkecil ke tertinggi atau huruf dari "A" ke "Z" akan sangat memudahkan dalam membaca alur worksheet. Maka sortir worksheet  secara alfanumerik adalah solusinya. Tinggal copy saja code di bawah ini gaes... dan paste ke module standar dalam workbook kamu.



2. Mengurutkan Sheet Sesuai Nama Bulan Ringkas Bahasa Inggris


Jika sebuah workbook laporan bulanan terdiri dari sekumpulan sheet dengan nama bulan, maka kita bisa mengurutkan sheet sesuai nama bulan. Nama bulan yang dikenali VBA secara default adalah bahasa inggris, sehingga kamu harus menamai sheet dengan nama bulan dalam bahasa Inggris. Untuk penulisan nama bulan ada 2 type yaitu tipe ringkas dan type panjang. Gunakan kode makro berikut untuk mengurutkan nama bulan yang ditulis dalam bahasa inggris model ringkas.


Keterangan:  
Nama bulan type ringkas dalam bahasa Inggris = Jan, Feb, Mar, Apr, May, Jun, ,Aug, Sep, Oct, Nov, Dec.

3. Mengurutkan Sheet Sesuai Nama Bulan Full Bahasa Inggris


Dengan sedikit modifikasi dari contoh kode nomor 2, maka contoh kode nomor 3 berikut ini bisa digunakan untuk mengurukan sheet nama bulan dalam bahasa inggris type nama bulan panjang.


Keterangan:  
Nama bulan type panjang dalam bahasa Inggris  = January, February, March, April, May, June, July, August, September, October, November, December.


4. Mengurutkan Sheet Sesuai Nama Bulan Ringkas Bahasa Indonesia


Meskipung secara default, VBA excel mengenali nama bulan dalam bahasa Inggris. Namun dengan sedikit modifikasi kita masih bisa mengurutkan sheet nama bulan dalam berbagai bahasa. Tinggal copas saja code berikut untuk mengurutkan sheet bulan type ringkas dalam bahasa Indonesia.


Keterangan: Nama bulan type ringkas dalam bahasa Indonesia = Jan, Feb, Mar, Apr, Mei, Jun, Jul, Agu, Sep, Okt, Nov, Des

5. Mengurutkan Sheet Sesuai nama bulan Full Bahasa Indonesia


Jika kamu menuliskan nama bulan type panjang dalam bahasa Indonesia maka gunakan code berikut untuk mengurutkan sheet bulannya.


Keterangan: Nama bulan type panjang dalam bahasa Indonesia = Januari, Februari, Maret, April, Mei, Juni, Juli, Agustus, September, Oktober, November, Desember.

...

Itulah beberapa contoh kode makro VBA yang sering digunakan untuk mengurutkan / sortir sheet.

Ada koreksi / saran ? jangan ragu untuk tinggalkan komentar.


Mungkin kamu tertarik untuk mengetahui contoh-contoh lainnya, silahkan klik tautan di bawah ini:

Salam..😎😎😎


Selasa, 23 November 2021

Menghapus Sheet

Menghapus / delete sheet merupakan hal yang lumrah bagi pengguna excel dan sangat mudah dilakukan dengan cara manual. Delete sheet menggunakan makro / VBA tentunya tidak merugikan untuk dicoba. Jika hapus menghapus sheet ini merupakan kegiatan rutin, maka VBA merupakan pilihan yang tepat untuk diterapkan.

1.  Menghapus Sheet Yang Sedang Aktif

Ini merupakan prosedur delete sheet yang paling sederhana. Seperti halnya cara manual delete sheet yang sering dilakuin kebanyakan user.




2.  Menghapus Semua Sheet Kecuali Sheet Yang Sedang Aktif

Jika kamu hanya memerlukan satu sheet saja, sedangkan sheet lainnya hanya berisi kumpulan data tidak berguna maka prosedur nomor 2 adalah pilihan yang tepat.




3.  Menghapus Sebuah Sheet Tertentu

Kamu melihat bahwa ada sebuah sheet tidak berguna dan harus dihapus, maka gunakan prosedur ini. Mirip prosedur nomor 1, hanya saja tidak perlu mengaktifkan sheetnya terlebih dahulu.




4.  Menghapus Beberapa Sheet Yang Memiliki Nama Depan Tertentu

Kamu bisa menandai sheet-sheet yang tidak diperlukan dengan ciri-ciri nama depan tertertentu. Ajib.. kamu bisa menghapusnya sekaligus.




5. Menghapus Satu Atau Lebih Sheet Paling Depan

Oh... Ternyata beberapa sheet paling depan tidak berguna. Tinggal hapus saja pake cara ini.





6.  Menghapus Satu Atau Lebih Sheet Paling Belakang

Eh... yang ini malah beberapa sheet paling belakang yang hanya menambah beban memory, tapi tidak ada gunanya sama sekali. Lebih baik hapus saja deh dengan cara ini.





7.  Menghapus Semua Sheet Grafik

File excel ku ternyata ada banyak sheet grafik yang sudah kehilangan referensi sumber datanya. Daripada menuh-menuhin  memoy, lebih afdhol delete saja ah..



Jika ada saran / koreksi terkait code VBA untuk menghapus sheet, jangan ragu untuk tinggalkan pesan / komentar.

Salam..


Code VBA Terkait:


Minggu, 21 November 2021

Menyembunyikan / Memunculkan Sheet

Menyembunyikan sheet diperlukan jika kamu menginginkan beberapa data tidak terlihat dan dirubah oleh user / kolega anda. Contoh - contoh kode VBA berikut dapat digunakan untuk menyembunyikan sheet maupun sebaliknya yaitu untuk memunculkan sheet yang tersembunyi.

1. Menyembunyikan sheet dengan nama depan tertentu


Ketika kamu membuat sebuah template laporan dan menyusun data dalam serangkaian sheet yang didesain dengan nama depan tertentu, misalnya: List 1, List 2, List 3 dan seterusnya. Kemudian kamu ingin menyembunyikan sheet list tersebut dengan cepat, Maka  kamu dapat membuat makro dengan kode berikut:




2. Menyembunyikan sheet supaya tidak sembarang user bisa memunculkan kembali sheet tersebut.


Alternatif lainnya, kamu bisa menyembunyikan sheet dengan mode sangat tersembunyi. Dengan mode ini maka tidak sebarang user bisa melakukan unhide sheet tersebut (tentunya kecuali user yang sudah tau triknya...). Untuk tujuan ini anda dapat menggunakan konstan xlSheetVeryHidden sebagai nilai property sheet Visible.




3. Memunculkan Sheet Tersembunyi Yang Memiliki Nama Dengan Kata Depan Tertentu


Prosedur nomor 3 ini merupakan kebalikan dari prosedur nomor 1.  Kita bisa memunculkan kembali satu atau lebih sheet tersembunyi yang memiliki nama depan tertentu. Cotoh kasus : dengan nama depan "List"


4. Memunculkan Semua Sheet Tersembunyi dengan Mode Standar.


Prosedur berikut dapat digunakan untuk memunculkan semua sheet tersembunyi dengan mode standar tanpa memperhatikan nama yang melekat pada sheet tersembunyi, namun tetap mempertahankan semua sheet yang super tersembunyi (very hidden) untuk tetap berdiam diri di persembunyiannya.




5. Memunculkan Sheet Tersembunyi Tanpa Kecuali


Jika kamu ingin mengeluarkan semua sheet dari persembunyiannya tanpa kecuali, maka prosedur nomor 5 menjadi pilihan yang paling tepat. Dengan prosedur ini semua sheet akan dipaksa keluar dari persembunyiannya dan terpampang nyata, termasuk very hidden sheet. 



Demikian beberapa contoh code makro / VBA yang bisa teman-teman gunakan untuk menyembunyikan sheet dan juga sebaliknya.

Jika ada saran / masukan silakan tinggalkan pesan.

Salam..

Contoh code terkait:

Menambah Worksheet Baru

Contoh Kode VBA berikut dapat digunakan untuk menambah beberapa sheet baru dengan berbagai model pilihan sesuai kebutuhan.

Menambah beberapa worksheet di posisi depan.


Menambah beberapa worksheet dengan posisi setelah sheet terakhir.

Menambah beberapa worksheet setelah sheet active.

Menambah beberapa worksheet setelah sheet dengan nama tertentu.

Catatan: Contoh kode di atas akan terjadi error pada saat dieksekusi apabila tidak ada nama sheet "Ws Awal". Supaya tidak terjadi error maka harus dipastikan variable namaWsAwal  merujuk ke nama sheet yang valid.


Ada koreksi / saran / request contoh VBA lainnya ? Silakan tinggalkan pesan di komentar.

Salam..


Protect dan Unprotect Semua Worksheet Sekaligus

Halo sobat, kali ini mimin akan berbagi contoh code macro vba untuk Protect dan Unprotect Worksheet Sekaligus Pada Microsoft Excel . ...