Membuat Daftar dan memilih Sheet

Oleh: Hendrik Karnadi

Dalam bekerja sering kali kita dihadapkan pada keharusan membuat atau menerima file (workbook) dengan jumlah sheet yang sangat banyak.

Baru-baru ini saya menerima satu file dengan jumlah sheet sebanyak 98 sheets dengan nama-nama yang hampir sama. Karena letak sheet yang tidak berurutan (mis. sesuai topik atau abjad) maka setiap kali saya mau mencari satu sheet saya harus mengingat-ingat letak sheet tersebut. Ketika saya coba membuka VBE Sheet untuk melihat letak sheet yang saya cari ternyata urutan nama sheet di VBE Sheet tidak sama dengan yang ada dalam workbook.

Saya coba membuat macro yang bisa membuat daftar sheets yang up to date pada sheet "Daftar" yang saya letakkan pada sheet paling kiri. Up to date berarti jika kita menambah, menghapus atau memindahkan sheet maka nama sheet akan langsung terdaftar dalam, terhapus dari sheet "Daftar" dan tersusun sesuai dengan urutan sheet terakhir. Jadi jika kita ingin mencari suatu sheet maka kita cukup mengklik sheet "Daftar" dan mendouble klik nama sheet yang kita inginkan.


Macronya adalah seperti ini (pada VBE Sheet1(Daftar):

Private Sub Worksheet_Activate()
    Dim Sh As Worksheet
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Sheets("Daftar").Activate
    Range("A1").Select
    Range("A1").CurrentRegion.ClearContents
    For Each Sh In Worksheets
        If Sh.Name <> "Daftar" Then
            ActiveCell.Value = Sh.Name
            ActiveCell.Offset(1, 0).Select
        End If
    Next
    Range("A1").Select
    Application.EnableEvents = True
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Sheets(ActiveCell.Value).Select
End Sub

Untuk mentes macro ini, kita bisa melakukan langkah-langkah berikut ini:

Menambah sheet
- Tambahkan sheet.
- Klik Sheet Daftar
- Lihat apakah sheet yang ditambahkan tersebut telah terdaftar

Menghapus sheet
- Hapus nama sheet
- Klik Sheet Daftar
- Lihat apakah sheet yang dihapus telah hilang dari daftar

Memindahkan sheet
- Pindahkan sheet dengan mendragnya dengan mouse
- Klik Sheet Daftar
- Lihat apakah urutan sheet dalam daftar telah sesuai dengan urutan atau letak sheet yang terakhir

Memilih sheet yang diinginkan
- Klik Sheet Daftar (paling kiri)
- Pilih dan Double Click nama sheet yang diinginkan

Semoga macro sederhana ini bermanfaat untuk menghemat waktu kerja kita.

Hendrik Karnadi/27-06-13

9 komentar:

  1. Luar Biasa.. Mantap...
    Saya akan setia kunjungan terus ni biar
    Pandai Ilmu Macro...

    BalasHapus
  2. Kenapa ada peringatan
    compile error
    syntax error???

    BalasHapus
    Balasan
    1. Coba jalan-jalan ke:
      https://www.dropbox.com/s/olq2gpxx5ok99a0/Membuat%20Daftar%20dan%20memilih%20Sheet.xlsm

      Hapus
  3. gimana cara buat macronya ya.... mohon diajarin dong... sepertinya berguna sekali deh.
    terima kasih

    BalasHapus
    Balasan
    1. Cara membuat macro sedang dan akan diajarkan secara berkesinambungan oleh Mr. Kid.
      Satu hal yang harus diperhatikan adalah file extension pada saat menyimpan file berisi macro dan saat menjalankan macro securitynya harus enable.

      Hapus
  4. Achmad Syaifullah15 Juli 2013 12.40

    Betapa saya sangat memerlukan macro seperti yang di atas.
    bisakah dikirimkan file excelnya plus macro tsb di atas.
    terima kasih atas bantuannya.

    BalasHapus
    Balasan
    1. Linknya ada di:
      https://www.dropbox.com/s/olq2gpxx5ok99a0/Membuat%20Daftar%20dan%20memilih%20Sheet.xlsm

      Hapus
  5. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  6. wah...
    agak di kreasikan dikit bisa kayak web tampilannya....
    hehehe

    BalasHapus