You've probably noticed

We love Excel

Author

When some user experience severe excel problem, it is not uncommon for their job activity to disturbed.
My great passion is bringing solution to some user who have been trought those experience, so they can save their times fixing excel issues.

  • myexcelive@gmail.com
  • www.excelive.com
  • READ MORE
Me

What will you get here

We have been work hard to bringing something useful for you in order to help your excel issues

Macro VBA 70%
Formula Excel 45%
Tips and Tricks 15%
Miscellaneous 25%

Expertise

We share the tutorials that we ourselves have tested in the workplace and slightly refine it to make it easy for you

Our Article

Every article on this site is presented explicitly so that you can understand the purpose of each tutorial.

Efficiency

We provides examples of just for illustration only, and we do not guarantee that they can be used in all situations.

Installation

every each codes on this site are provided "as is" and are easy to install

Youtube

in order to facilitate you in learning excel, you can visit our channel here

Design

all the design of each tutorial has passed the test for excel 2007 up

Tampilkan postingan dengan label Macro VBA. Tampilkan semua postingan
Tampilkan postingan dengan label Macro VBA. Tampilkan semua postingan
  • Cara Cepat Membuat Matrik Rencana Kegiatan Menggunakan Macro VBA

    jadwal kegiatan Matrik adalah sebuah informasi yang disampaikan serta ditampilkan dalam bentuk kolom dan baris yang tak ubahnya seperti lembar kerja dalam aplikasi Microsoft Excel, maka dari itu hampir mayoritas para pembuat rencana kegiatan bentuk matrik ini mengandalkan bantuan aplikasi Excel dalam merancang usulan rencana program kegiatan dengan tujuan agar segala apa yang dirancang bisa diselesaikan sesuai dengan jadwal yang ditentukan.

    Beberapa alasan dari mereka yang menggunakan matrik kegiatan sebagai acuan pelaksanaan program antara lain adalah kemudahan dalam melakukan kontrol kegiatan serta membantu dalam pengambilan keputusan.

    Terlepas dari berbagai macam alasan yang ada, kali ini excelive.com akan membantu anda dalam merancang dan membuat matrik kegiatan secara cepat dilengkapi dengan warna-warna yang menunjukkan tanggal pelaksaan kegiatan dengan menggunakan aplikasi Microsoft Excel.

    Sebelum memulai pembelajaran kali ini, ada baiknya anda lihat hasil akhir dari apa yang akan kita kerjakan nanti:
    Matrik rencana kegiatan
    Tampilan di atas saya buat dengan cara menyusun terlebih dahulu struktur matrik dalam lembar kerja Microsoft Excel dalam rentang satu bulan, beberapa diantara point penting dalam merancang matrik di lembar adalah :
    • Kolom A : berisi sebuah nomor urut kegiatan
    • Kolom B : berisi deskripsi singkat dari kegiatan yang akan dilakukan
    • Kolom C : berisi tanggal awal kapan kegiatan tersebut akan dilaksanakan, dan
    • Kolom D : berisi tanggal akhir kegiatan
    Sementara untuk kolom-kolom setelah kolom yang saya sebut di atas, saya isi dengan tanggal untuk memudahkan dalam membaca matrik

    Ok, saya berasumsi bahwa anda sudah merancang matrik kegiatan paling tidak seperti gambar di atas. Dan langkah selanjutnya adalah :
    1. Tekan kombinasi tombol Alt+F11 untuk mengaktifkan jendela Microsoft Visual Basic Editor
    2. Selanjutnya klik menu Insert dan pilih perintah Module untuk memebuat sebuah module baru
    3. Isi module yang pertama berfungsi untuk menghapus semua isi dalam range tertentu dengan baris kode seperti berikut
      Sub Hapus()
      brs = Range("A4").End(xlDown).Row
      kol = Range("A4").End(xlToRight).Column
      Set cl = Cells(1, kol)
      hasil = Replace(cl.Address(False, False), "1", "") & brs
      
      rg = "E5:" & hasil
      'kode di bawah ini digunakan untuk menghapus interior, border dan isi dalam range yang terdapat di kode rg
      Range(rg).Interior.ColorIndex = xlNone
      Range(rg).Borders.LineStyle = xlNone
      Range(rg).ClearContents
      End Sub
      Beberapa baris kode penting dari script Macro VBA di atas antara lain:
      • Hapus : mama sub module
      • brs : digunakan untuk mengetahui posisi baris terakhir yang berisi data
      • kol : sama seperti kode brs, namun berfungsi untuk mengetahui kolom terakhir
      • Set cl : digunakan untuk menentukan isi sel sesuai dengan kode yang terdapat di baris kol
      • hasil : bertujuan untuk mengkonversi (merubah) kode cl menjadi nama kolom
      • rg : berfungsi untuk menuliskan alamat range
    4. Berikutnya adalah membuat module kedua yang merupakan kode inti dari tutorial ini, yakni untuk menggambar kotak-kotak sesuai dengan tanggal awal dan akhir seperti berikut
      Sub matrik()
      Dim isi, hsl, kol1, kol2, Tg1, Tg2 As Variant
      Dim n As Long
      a = Range("A4").End(xlDown).Row
      
      Application.ScreenUpdating = False
      Call Hapus
      
      For n = 5 To a
      Tg1 = Cells(n, 3)
      Tg2 = Cells(n, 4)
      
      If Tg1 > 0 And Tg2 > 0 And IsNumeric(Tg1) And IsNumeric(Tg2) Then
          Set kol1 = Cells(1, Tg1 + 4)
          Set kol2 = Cells(1, Tg2 + 4)
          hsl = Replace(kol1.Address(False, False), "1", "") & n & ":" & _
                Replace(kol2.Address(False, False), "1", "") & n
          isi = Replace(kol1.Address(False, False), "1", "") & "4:" & _
                Replace(kol2.Address(False, False), "1", "") & "4"
          
          With Range(hsl)
              .Interior.Color = RGB(140, 180, 255)
              .Borders.ColorIndex = 56
              .Borders.LineStyle = xlContinuous
              .Borders.Weight = xlHairline
              'Baris kode pilihan untuk mengisi kotak dengan tanggal
              .Value = Range(isi).Value
              .Font.Size = 8
              .Font.Color = RGB(0, 0, 255)
          End With
      End If
      Next
      Application.ScreenUpdating = True
      End Sub
      Cara kerja secara umum dari kode inti ini adalah :
      Menentukan terlebih dahulu sebuah parameter dengan nama a untuk mendeteksi baris terakhir yang berisi sebuah nilai, kemudian mengawali baris perintah dengan menjalankan module hapus, dilanjutkan dengan baris kode untuk mulai membaca baris ke-5 hingga baris terakhir yang ditemukan oleh parameter a.

      Baris kode berikutnya adalah berfungsi untuk menguji beberapa sel dengan menggunakan statement logika dimana jika kolom Tgl1 dan Tgl2 berisi nilai yang lebih besar dari nol serta kolom-kolom tersebut berupa angka maka perintah akan dilanjutkan dengan mengeksekusi beberapa perintah berikut, antara lain:
      1. Menentukan jumlah sel yang terpilih berdasarkan hasil dari nilai Tgl1 dan Tgl2 masing-masing berjumlah 1 sel
      2. Kolom awal untuk mewarnai hasil temuan dimulai dari kolom E
      3. Mengkonversi bilangan kolom menjadi bentuk alphabet, dan
      4. Menggabungkan hasil konversi tersebut menjadi sebuah range

      Setelah ketentuan tersebut dibuat, baru menjalankan aksi utama dari tutorial ini diantaranya :
      1. Mewarnai alamat range dengan warna menggunakan mode RGB, dan
      2. Memberikan garis tepi berukuran xlHairline dengan warna menggunakan mode ColorIndex

      kemudian dilanjutkan dengan beberapa baris kode yang sifatnya pilihan, antara lain:
      1. Mengisi masing-masing sel yang ditemukan oleh kode hsl dengan baris kode yang ditentukan oleh nilai isi
      2. Memberikan ukuran serta warna huruf yang selanjutnya bisa diatur sesuai dengan selera

    Jika terjemahan kode yang saya rangkai di atas kurang begitu jelas atau bahkan terkesan membingungkan, mungkin dengan mengintip hasil akhir dari tutorial ini bisa membantu menambah pemahaman anda. Dan jika ingin mengoleksi tutorial ini, silahkan download file project-nya secara gratis untuk anda.

    Sebagai penutup tutorial dalam membuat rencana program kegiatan menggunakan bentuk dan model matrik, ijinkan saya untuk mengucapkan terimakasih untuk anda karena telah berkunjung ke situs excelive.com dan membaca ulasan ini dari paragraf awal hingga paragraf yang saat ini sedang anda baca.
    Mudah-mudahan xcelive.com bisa menjadi salah satu pilihan dan partner terbaik anda dalam menemani aktivitas pekerjaan mengolah data berbasis Ms.Excel. Danke

  • Gunakan Cara Ini Untuk Menampilkan Informasi Tanggal Terakhir Ketika Melakukan Proses Save

    Simpan informasi tanggal excelive.com - Selamat datang kembali di salah satu referensi alternatif tempat belajar Microsoft Excel. Salah satu situs yang membahas tentang berbagai macam tips dan trik Microsoft Excel untuk membantu anda dalam menyelesaikan pengolahan data secara cepat dan tepat.

    Berbicara tentang sesuatu yang membahas tentang alternatif memang tidak luput dari keyakinan atau selera masing-masing individu, artinya sesuatu tersebut bukan sebuah kewajiban yang harus dilakukan karena sifatnya hanyalah sebuah pilihan, seperti halnya tutorial yang akan saya share kali ini yakni tentang sebuah fitur yang bisa digunakan untuk mengingatkan kepada pengguna akan status terakhir kapan menyimpan dokumen Microsoft Excel, serta mengingatkan kepada pengguna bahwa dokumen telah mengalami perubahan.

    Ok, karena tutorial ini berhubungan dengan proses menyimpan serta perubahan yang dilakukan di lembar kerja - maka ada 2 (dua) prosedur yang menjadi sorotan, yakni prosedur BeforeSave dan SheetChange yang mana kedua prosedur tersebut bisa ditemukan di Project VBA, tepatnya di aplikasi Microsoft Visual Basic yang sudah terintegrasi dengan Microsoft Excel, dan anda bisa membuka aplikasi ini cukup dengan menekan tombol kombinasi Alt+F11 di keyboard.

    Setelah jendela Microsoft Visual Basic berhasil dibuka, langkah selanjutnya adalah
    1. Memilih salah satu Objek Microsoft Excel yang terletak di jendela sebelah kiri. Untuk contoh ini, saya memilih (klik 2x) ThisWorkbook sebagai lahan eksperimen. :)
    2. Jendela kode yang masih kosong inilah yang akan kita isi dengan beberapa kode di dalam prosedur yang sudah saya sebutkan di atas. Dan untuk lebih cepatnya, silahkan copy-paste kode berikut ke dalam jendela kode yang masih kosong
      Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
      Sheets(1).Range("A1") = Format(Date, "dd-mm-yy") & " | " & Format(Time, "HH:MM.ss")
      Application.StatusBar = [a1]
      End Sub
      
      Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
      Application.StatusBar = [a1] & " *)"
      End Sub
      
      Private Sub Workbook_WindowActivate(ByVal Wn As Window)
      Application.StatusBar = [a1]
      End Sub
      
      Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
      Application.StatusBar = ""
      End Sub
      
      Penjelasan singkat dari masing-masing prosedur di atas antara lain:
      • BeforeSave
        Perintah yang tertulis di dalamnya akan dijalankan saat prosedur menyimpan dokumen dilakukan oleh pengguna, dengan ketentuan mengisi sel A1 dengan informasi tanggal dan waktu yang saat ini sedang aktif.
        Kemudian, merubah tampilan status bar dengan informasi sesuai dengan apa yang tertulis di sel A1.
      • SheetChange
        Prosedur ini akan dijalankan ketika pengguna melakukan perubahan terhadap setiap lembar kerja yang terdapat dalam dokumen yang saat ini aktif, di mana setiap perubahan yang dilakukan akan menampilkan informasi berupa tanggal dan waktu namun diberi sebuah akhiran dengan simbol *)
      • WindowActivate
        Bertujuan agar setiap kali pengguna mengaktifkan dokumen ini, informasi yang tertulis di status bar akan terisi sesuai dengan nilai yang terdapat di sel A1
      • WindowDeactivate
        Berfungsi untuk mengembalikan informasi status bar ke settingan default disaat pengguna menutup (menonaktifkan) dokumen ini.

    Selain hasil perubahan dan informasi terkait waktu terakhir proses penyimpanan ditampilkan di StatusBar, teknik ini juga bisa diterapkan ke dalam sebuah userform dengan memberikan sedikit tambahan baris kode di dalamnya. Dan untuk hasil akhir, bisa anda lihat di tampilan berikut :
    Status informasi penyimpanan terakhir

    Untuk kode yang digunakan, silahkan kunjungi halaman download untuk mendapatkan file project dari tutorial ini.

    Terimakasih sudah berkunjung di excelive.com dan membaca ulasan terkait Status perubahan dan tanggal terakhir menyimpan dokumen Microsoft Excel. Semoga tulisan ini memberikan manfaat untuk anda. Thanks for visiting

  • Cara Menempatkan Beberapa Item atau Anggota ke Dalam Grup Secara Acak

    drawing anggota ke dalam grup excelive.com - Pada edisi kali ini, tutorial yang akan saya share berikut sangat cocok bagi anda yang ingin membagi atau memisah beberapa item atau anggota ke dalam beberapa grup atau kelompok yang berbeda, serta dilakukan secara acak. Konsep seperti ini bisa dijumpai pada hasil pembagian siswa-siswi di setiap kelas, atau hasil pembagian peserta kelompok pramuka, hingga bisa anda jumpai pada hasil drawing piala champions, yang mana semuanya dilakukan secara acak.

    Okelah, mungkin contoh terakhir agak sedikit terlalu memaksa - tapi memang konsep tutorial ini bisa menghasilkan pembagian anggota kelompok ke dalam grup yang berbeda. Silahkan anda lihat tampilan berikut ini.
    menempatkan anggota ke dalam grup

    Untuk membuat seperti yang tampak di atas, saya menggunakan kombinasi antara formula Excel dengan Macro VBA, di mana formula excel saya gunakan untuk mengecek dan menentukan item atau anggota ke dalam grup atau tim dengan ukuran tertentu, sementara Macro VBA saya gunakan untuk menempatkan hasil pembagian tersebut dalam beberapa ListBox yang ada dalam UserForm.

    Sebelum melangkah lebih jauh lagi, ada baiknya kita tengok beberapa data yang terdapat dalam lembar kerja yang akan kita gunakan sebagai sumber pembuatan dalam tutorial ini.
    memisah anggota grup
    Dua kolom yang akan kita isi dengan formula excel adalah kolom B dan kolom C, yang mana masing-masing kolom tersebut dapat diisi dengan formula sebagai berikut :
    Formula Excel
    isi sel B2:
    =RAND()
    isi sel C2:
    =ROUNDUP(RANK(C2;$B$2:$B$13)/$F$1;0)

    Anda bisa copy-paste kedua formula tersebut hingga sel terakhir yang berisi data, atau hingga sel B13 dan C13.

    Saya pikir disini saya tidak akan banyak menjelaskan fungsi dari kedua formula di atas, karena saya yakin anda sudah cukup familier dengan keduanya. Akan tetapi untuk formula yang kedua atau yang ditulis di kolom C, terdapat sebuah nilai yang mengacu ke sel F1 (warna merah), hal ini bertujuan untuk menentukan berapa banyaknya jumlah anggota yang ada dalam satu grup.

    Sehingga, untuk formula yang terdapat di dalam kolom C bisa diartikan sebagai berikut :
    ROUNDUP atau melakukan pembulatan terhadap hasil yang didapatkan dari formula RANK dengan kriteria yang ada di range B2 hingga B13, kemudian dibagi dengan jumlah atau nilai yang ada di sel F1.

    Oke, untuk lebih memahami tutorial kali ini, silahkan anda baca lagi beberapa tutorial terkait berikut :
    Menggunakan RANK
    Cara membuat nilai Acak
    Berbagai cara menampilkan hasil ke kotak ListBox
    ListBox berisi data-data unik

    Nah, karena saya menginginkan hasil penempatan anggota tim yang ada dalam grup dibagi secara otomatis dan acak, maka kedua formula di atas saya konversi ke dalam kode Macro VBA, hingga menjadi seperti ini :
    Macro VBA untuk mendapatkan Nilai Acak
    Dim i As Long
    Call IsiData
    For i = 2 To Akhir
        Cells(i, 3) = Rnd
    Next

    Macro VBA untuk menentukan hasil pembagian anggota
    Dim r As Double
    For r = 2 To Akhir
        Cells(r, 2) = WorksheetFunction.RoundUp _
        (WorksheetFunction.Rank(Cells(r, 3), _
        Range("C2:C" & Akhir)) / [F1], 0)
    Next
    

    Sebagai tambahan, saya akan membuat sebuah variabel yang sifatnya public (kode berwarna merah) sehingga ia bisa digunakan di seluruh project vba yang sedang aktif, sehingga kita hanya tinggal memanggil nama variabel tersebut ketika ingin menggunakannya tanpa harus menuliskan lagi kode-kodenya.

    Untuk tutorial kali ini saya membuat sebuah variabel yang berfungsi untuk menentukan jumlah data yang terdapat dalam lembar kerja (variabel : isi) serta membuat sebuah variabel yang bertugas untuk menentukan baris terakhir yang berisi data (variabel : Akhir). Kedua variabel ini saya masukkan ke dalam Module, seperti berikut
    Option Explicit
    Public Akhir As Long
    Public isi As Integer
    
    Sub IsiData()
    isi = Application.WorksheetFunction.CountA(Range("A1:A" & Akhir))
    Akhir = Range("A1").End(xlDown).Row
    End Sub

    Sementara untuk menempatkan nama-nama anggota ke dalam masing-masing ListBox seperti contoh di atas, saya menuliskan kode berikut di dalam sebuah module
    Sub grup1()
    Dim Data As Variant
    Dim i As Long
    
    Data = Range("A2:C" & Akhir)
    UserForm1.ListBox1.Clear
    For i = 1 To UBound(Data)
    If Data(i, 2) = 1 Then
    With UserForm1.ListBox1
       .AddItem Data(i, 1)
    End With
    End If
    Next i
    End Sub
    Kode di atas digunakan untuk menempatkan nama-nama anggota ke dalam grup1 yang letaknya ada di dalam sebuah kotak bernama ListBox1 yang terdapat dalam userform dengan Name UserForm1, artinya jika anda mempunyai Name UserForm serta ListBox yang berbeda maka silahkan ganti nama dari masing-masing kontrol tersebut.
    Untuk membuat grup2 dan grup3, silahkan ganti nilai 1 menjadi nilai 2 dan 3.

    Setelah selesai membuat kode-kode yang ada dalam module, kini saatnya kita mengerjakan kode yang terdapat di dalam UserForm dengan asumsi bahwa objek-objek yang terdapat dalam UserForm anda memiliki beberapa objek seperti contoh di atas, antara lain :
    • Nama Userform = UserForm1
    • TextBox1 = Jumlah Group
    • CommandButton1 = Acak
    • CommandButton2 = Pasang
    • ListBox1 = Grup1
    • ListBox2 = Grup2
    • ListBox3 = Grup3

    Prosedur ketika UserForm Aktif
    Private Sub UserForm_Activate()
    Dim i As Long
    Call IsiData
    For i = 2 To Akhir
        Cells(i, 3) = Rnd
    Next
    End Sub
    Prosedur ketika pengguna memasukkan nilai di kotak TextBox1
    Private Sub TextBox1_Change()
    On Error Resume Next
    [F1] = isi / (TextBox1 * 1)
    End Sub

    Kode yang terdapat dalam CommandButton1 = Acak
    Untuk kode yang ada dalam CommandButton ini, silahkan masukkan kode Macro VBA untuk mendapatkan nilai acak yang sudah saya tulis disini

    Script Macro VBA untuk menempatkan anggota ke dalam masing-masing ListBox
    Saya berasumsi bahwa anda sudah berhasil menulis module untuk masing-masing grup, karena untuk kode yang terdapat di CommandButton ini bertugas memanggil kode-kode tersebut, serta di gabung dengan kode ini. Dan kode akhir untuk tombol ini adalah seperti berikut :
    Private Sub CommandButton1_Click()
    Dim r As Double
    For r = 2 To Akhir
        Cells(r, 2) = WorksheetFunction.RoundUp(WorksheetFunction.Rank(Cells(r, 3), Range("C2:C" & Akhir)) / [F1], 0)
    Next
    
    Call grup1
    Call grup2
    Call grup3
    End Sub

    Selesai.... silahkan anda lakukan test dengan cara menekan tombol yang terdapat di menubar.
    Semoga tutorial ini ada manfaatnya untuk anda. Dan jangan lupa silahkan klik tombol subscribe jika anda tidak ingin ketinggalan tutorial excel lainnya dari excelive.com Gracias

  • Bagaimana Membuat Border atau Pembatas Secara Otomatis Sesuai dengan Kriteria isi Data Sel? Ini Caranya

    border otomatis Sebuah pertanyaan yang saya usung sebagai judul artikel ini memang sengaja saya tulis agar anda yang sedang ingin mengotomatisasi border dalam lembar kerja berdasarkan kriteria, bisa langsung mempraktekkannya tanpa membuang banyak waktu dalam mencari informasi sejenis yang banyak beredar di dunia maya.

    Dengan tanpa ada maksud untuk merendahkan kualitas tutorial sejenis yang diulas dan yang sudah banyak beredar tersebut, terkadang beberapa dari mereka hanya sekedar copy-paste dari situs lain demi meningkatkan jumlah pengunjung sebanyak-banyaknya tanpa melakukan uji coba terlebih dahulu terhadap tutorial yang sedang mereka tulis atau bahas di website tersebut. Ini juga tidak membuktikan bahwa tulisan yang sedang anda baca saat ini memiliki kualitas yang lebih baik dari mereka. Akan tetapi, saya berusaha semaksimal mungkin agar apa yang saya tulis dan bahas di setiap tutorial excelive.com, untuk mudah dipahami dan tentunya ada manfaatnya bagi siapa saja yang sedang membaca - yang pada akhirnya bukan saya yang akan mengatakan bahwa situs ini lebih baik dari mereka, tetapi anda.

    Tujuan awal dari apa yang akan saya bahas pada edisi kali ini berkaitan dengan efektifitas dalam memberikan garis pembatas atau yang lebih umum disebut dengan border pada lembar kerja agar bisa dilakukan secara cepat dan otomatis dibuat berdasarkan kriteria yang diinginkan oleh pengguna. Sekilas ketika kita mendengar kata-kata otomatis saat bekerja menggunakan Microsoft Excel, maka dalam pemahaman kita mungkin langsung menuju ke script kode VBA yang cukup kompleks. Tapi untuk kali ini, pemahaman tersebut tidak 100% benar, meskipun sebenarnya bisa saja dilakukan dengan script VBA. Tapi kita akan mencoba sesuatu yang lebih mudah dan sederhana terlebih dahulu, dan yang penting cocok dengan apa yang kita butuhkan.

    Anda juga bisa belajar dan mengkombinasikan tutorial ini dengan tutorial lain yang sudah saya bahas sebelumnya, seperti :
    Menjumlah setiap baris ke-n
    Cara menentukan baris akhir dalam Lembar Kerja Excel
    Menampilkan dan memberikan Ranking Berdasarkan kriteria

    Sebelum mulai belajar membuat garis pembatas otomatis, saya memiliki data penjualan sebuah produk yang masih polos tanpa ada pembatas yang saya tulis di lembar kerja Microsoft Excel. Dan berikut tampilan data yang saya maksud :
    data penjualan

    Versi sederhana dari tutorial ini bisa dilakukan tanpa mengunakan Macro VBA, yakni dengan menggunakan fitur Conditional Formatting persis dengan apa yang sudah saya bahas di tutorial Memberi warna background yang berbeda di setiap sel, hanya saja untuk bagian penulisan formula, ganti dengan formula seperti gambar berikut :
    conditional format
    Salah satu kelemahan menggunakan teknik ini adalah, garis pembatas yang dihasilkan tidak beraturan dan tentunya sangat menggangu dan mengurangi nilai keindahan dari sebuah tabel (gambar sebelah kanan).

    Untuk mengatasi ketidakaturan garis pembatas yang dihasilkan dengan menggunakan fitur Conditional Formatting, saya menggunakan bantuan Macro VBA yang mana rumusnya saya adopsi dari rumus di atas. Untuk melakukan hal ini, silahkan ikuti langkah-langkah pengerjaan berikut :
    1. Buka jendela Microsoft Visual Basic Editor dan buat sebuah module baru
    2. Setelah berhasil membuat module baru, langkah selanjutnya adalah tulis baris kode berikut di dalamnya
      Sub Pembatas()
      Dim a As Variant
      a = Application.WorksheetFunction.Match([F1], Range("A1:D1"), 0)
      Application.ScreenUpdating = False
      Range("A1:K100").Borders.LineStyle = xlNone
      For i = 1 To Range("A1").End(xlDown).Row
      If Cells(i, a) <> Cells(i + 1, a) Then
          With Range("A" & i & ":D" & i).Borders(xlEdgeBottom)
              .LineStyle = xlContinuous
              .Weight = xlMedium
          End With
      Else
          With Range("A" & i & ":D" & i).Borders(xlEdgeBottom)
              .LineStyle = xlContinuous
              .Weight = xlHairline
          End With
      End If
      Next
      
      Application.ScreenUpdating = True
      End Sub
      Penjelasan singkat kode di atas :::
      • a
        Adalah sebuah nilai yang digunakan untuk menentukan indeks kolom yang sesuai dengan nilai yang ada di sel F1, sementara isi dari sel F1 dibuat menggunakan Data Validation
      • ScreenUpdating = False
        Baris kode ini bertujuan agar perubahan yang terjadi di layar tidak ditampakkan, sehingga dengan di set FALSE sebelum proses suatu prosedur maka akan menghilang tambahan waktu akibat proses screen updating. Setelah prosedur berakhir, screen updating di set kembali TRUE
      • Range("A1:C100").Borders.LineStyle = xlNone
        Berfungsi untuk menghapus semua border yang terdapat di range A1 sampai dengan C100
      • For i
        Ini adalah fungsi looping untuk membaca mulai baris 1 hingga baris terakhir yang memiliki nilai di sepanjang kolom A
      • If Cells(i, [J1])...
        Ini yang saya maksud dengan rumus yang saya adopsi dari Formula Excel, sementara a adalah sebuah indeks kolom yang saya gunakan untuk menentukan kriteria dalam menentukan garis pembatas.
      • Range("A" & i & ":D" & i).Borders(xlEdgeBottom)
        Digunakan untuk menentukan range yang akan diberi garis pembatas, dengan ketentuan yang ada di dalamnya.
      • xlMedium
        Membuat sebuah garis dengan ukuran medium
      • xlHairline
        Membuat sebuah garis dengan ukuran tipis
    3. Langkah berikutnya, saya menggunakan bantuan fitur Data Validation yang saya difungsikan untuk memilih kriteria garis pembatas, di mana caranya adalah sebagai berikut :
      • Sebagai contoh pilih sel F1 kemudian pilih tab menu Data dan pilih Data Validation
        (jika ingin mengganti alamat sel J1, maka pastikan baris kode Macro VBA sesuai dengan sel yang sudah diganti)
      • Dijendela Data Validation, pilih kategori List yang terdapat di tab setting, sementara untuk source : pilih range A1 hingga C1 dan akhiri dengan tombol OK
        data validation
    4. Untuk langkah ini sifatnya optional karena tujuannya hanyalah untuk mempermudah dalam melihat hasilnya saja, yakni menyisipkan sebuah tombol ActiveX Control yang bisa anda akses melalui menu Developer dan menempatkannya ke dalam lembar kerja Microsoft Excel, sementara untuk baris kode dari tombol ini, bisa anda gunakan script seperti ini
      Call Pembatas

    Penasaran dengan hasil akhir dari tutorial yang cukup panjang ini!!! Silahkan lihat tampilan berikut
    hasil akhir border otomatis

    Akhirnya kita sudah sampai dipenghujung tutorial untuk edisi membuat garis pembatas secara otomatis berdasarkan kriteria tertentu. Mudah-mudahan tutorial ini ada manfaatnya, dan bisa menjadikan situs ini menjadi salah satu parter Microsoft Excel yang terbaik yang selalu menemani anda. Grazie per la visita



  • Cara Mengatur Tinggi Baris Sebuah Sel Secara Otomatis Berdasarkan Jumlah Karakter

    auto height Setiap sel yang disediakan oleh Microsoft Excel bisa dibilang cukup unik, betapa tidak, ia bisa memuat sejumlah karakter yang lebih lebar dari ukuran yang dimilikinya dan berusaha menampilkan semuanya hingga menembus sel-sel yang ada di sebelahnya, dangan catatan isi sel yang ada di sebelahnya bukan berupa angka serta sel masih kosong.

    Dengan kondisi seperti ini, tentu saja terkadang menipu mata kita disaat memandangnya karena kita mungkin salah dalam menentukan lokasi alamat sel, juga menghasilkan tulisan yang tidak begitu rapi, apalagi ketika ingin menyajikannya dalam sebuah laporan dalam bentuk tabel.

    Memang hal ini bisa dilakukan dengan menggunakan kombinasi antara fitur Wrap Text serta Auto Fit Row Height, tapi cara ini hanya bisa dilakukan saat kita meng-klik nya di sel mana yang kita pilih.

    Otomatis sih iya, tapi mungkin agak sedikit kurang maksimal karena harus mengklik dulu fitur yang saya sebut di atas.

    Ok, sebelum melangkah lebih jauh lagi, ada baiknya perhatikan dulu data yang saya miliki berikut :
    mengatur tinggi baris otomatis
    Baris 2 dan 5 berisi nilai yang sudah pas dengan lebar kolom sehingga tidak harus dirubah tinggi barisnya, sementara baris lainnya berisi teks yang cukup panjang sehingga harus diatur tinggi barisnya agar tidak sampai menembus sel yang ada di sebelahnya.
    Sementara pada baris ke-9 dan seterusnya, saya berencana untuk menyematkan sebuah formula RANDBETWEEN dan juga formula VLOOKUP untuk menguji apakah hasil yang nantinya ditampilkan bisa mempengaruhi tinggi baris yang berbeda antara satu dengan yang lainnya sesuai dengan jumlah dan panjang karakter yang dimiliki tanpa harus mengubah panjang kolomnya.

    Ada baiknya anda baca tutorial berikut yang bisa dijadikan panduan serta dapat juga dikombinasikan dengan tutorial ini, antara lain :
    Menentukan posisi baris terakhir yang berisi nilai
    Mengenal parameter Current Region untuk menentukan rentang nilai
    Fungsi VLOOKUP menghasilkan nilai ERROR

    Untuk kasus ini, saya menggunakan formula RANDBETWEEN yang saya letakkan di kolom A saya fungsikan sebagai salah satu parameter pencarian dalam formula VLOOKUP hanya untuk memudahkan saja dalam melihat setiap perubahan. Anda tidak harus menggunakan cara atau formula ini jika anda sudah mempunyai parameter pencarian (lookup value) sendiri yang sudah anda tentukan.
    Sementara untuk formula VLOOKUP, saya letakkan di kolom B mulai baris 9 hingga baris 13 dengan syntax penulisan yang sudah sangat familier bagi pengguna Excel, yang tampilannya kurang lebih seperti berikut :
    FORMULA VLOOKUP
    =VLOOKUP(A9,$A$2:$B$6,2,0)
    Langkah selanjutnya adalah, mengotomatisasi tinggi baris hasil dari formula VLOOKUP dengan cara :
    1. Buka jendela Micrsoft Visual Editor yang bisa dilakukan dengan cara menekan kombinasi tombol ALT+F11 yang ada di keyboard
    2. Klik 2x objek Sheet1 (atau sheet lain yang ingin diotomatisasikan) untuk menampilkan jendela kode
    3. Di jendela kode yang sudah terbuka, silahkan tulis baris kode berikut :
      Private Sub Worksheet_Change(ByVal Target As Range)
      With Range("B9:B13")
        .WrapText = True
        .Rows.AutoFit
        .VerticalAlignment = xlTop
      End With
      End Sub
      Kode ini akan berjalan secara otomatis setiap kali ada perubahan yang dilakukan di lembar kerja atau Sheet1, dan perubahannya hanya akan berpengaruh untuk Range B9:B13 dengan ketentuan :
      • Mengaktifkan fitur WrapText agar isi yang ada dalam sel ditampilkan dalam beberapa baris jika isi tersebut melebihi panjang kolom.
      • Memformat tinggi baris dari sel-sel tersebut menjadi AutoFit, yakni untuk menyesuaikan isi dengan panjang kolom
      • Mengatur perataan sel dengan model xlTop, yakni jenis perataan yang menempatkan isi di posisi atas
    4. Tutup jendela Microsoft Visual Basic Editor yang bisa dilakukan dengan cara klik tombol close atau menggunakan kombinasi tombol ALT+Q

    Saatnya menguji coba kode Macro VBA yang sudah kita buat apakah sudah berjalan sesuai dengan keinginan?. Dan berikut ini adalah hasil akhirnya :
    AutoHeight sel

    Bagaimana menurut anda ?!
    Apakah tutorial dalam mengatur tinggi baris sebuah sel secara otomatis ini cukup bermanfaat?!. Silahkan tuliskan tanggapan anda di kolom komentar yang tersedia. Dankie vir u besoek

  • Still haven't found what are you looking for

    We have provided a complete list of articles on this site to make it easier for you and giving the best solution for your excel issues

    VISIT LINK
    DMCA.com Protection Status

    excelive.com
    is a blogger resources site who provides best excel tutorial based on daily needs. The main mission of excelive is to share our little experience in excel to deliver best time killer for your excel issues.
    T.O.S
    Term of service

    Read More
    Download Area
    to complete all excel lessons, we have provided a download link for you Find Here
    Copyright © 2015 - excelive.com. Some rights reserved.
    equipped with by blogger