Showing posts with label VBA. Show all posts
Showing posts with label VBA. Show all posts

Mengcopy Data dan Menghapus Duplikat di VBA Excel


Setelah sekian lama tidak update di situs ini, kali ini Saya akan menyajikan tutorial atas dasar permintaan salah satu pembaca yang mengemail Saya. Beliau ingin tahu cara menyalin data dari satu sheet yang berisi kumpulan data unik yang mana banyak kesamaan data dan beliau juga butuh menghilangkan kesamaan data yang ada pada tabel tersebut.
Mengcopy Data dan Menghapus Duplikat di VBA Excel
Jika Anda memiliki keluhan yang sama dengan pengirim tadi, berarti Anda beruntung dapat singgah di postingan ini, namun jika Anda tidak memiliki keluhan serupa, mungkin Anda bisa belajar dari kasus tersebut dan mencoba menemukan solusinya di artikel ini.

Solusinya sederhana, untuk mengcopy data, Anda bisa menggunakan property copy dan menempelkan dengan paste. Sebelumnya pernah disinggung di artikel Cara Mengcopy Data Otomatis. Untuk menghapus data yang sama, Anda bisa menggunakan property RemoveDuplicates. Untuk lebih jelasnya, silakan ikuti langkah-langkah berikut:

LANGKAH 1:

Buatlah lembar kerja baru dengan nama terserah.

LANGKAH 2:

Sheet 1 diberi nama "Database" berisi data akun di bawah ini (bisa disalin, blok data kemudian copy - paste ke lembar kerja pada sel A1).
Account Name
10000005 Vernon
10000005 Vernon
10000005 Vernon
10000005 Vernon
10000006 Mitsuko
10000006 Mitsuko
10000006 Mitsuko
10000006 Mitsuko
10000006 Mitsuko
10000006 Mitsuko
10000007 Kristian
10000007 Kristian
10000007 Kristian
10000007 Kristian
10000007 Kristian
10000007 Kristian
10000007 Kristian
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000008 Leroy
10000010 Trang
10000010 Trang
10000010 Trang
10000010 Trang
10000010 Trang
10000010 Trang
10000010 Trang
10000012 Sheba
10000012 Sheba
10000012 Sheba
10000012 Sheba
10000012 Sheba
10000012 Sheba
10000012 Sheba
10000020 Kenda
10000020 Kenda
10000020 Kenda
10000020 Kenda
10000020 Kenda
10000020 Kenda
10000020 Kenda

LANGKAH 3:

Sheet 2 diberi nama "Account List" dan berisi tabel dengan header kolom bertuliskan "Account List" di sel A1 (nama opsional).
Account List

LANGKAH 4:

VBA Macro pada Module1 diisikan sintaks sebagai berikut:
Sub SalinDanDeduplikasi()
Sheets("Database").Select
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Account List").Select
Range("A2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range(Selection, Selection.End(xlDown)).RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

LANGKAH 5:

Tetapkan Macro yang sudah dibuat diatas bernama SalinDanDeduplikasi pada objek yang Anda kehendaki seperti button, shape, maupun langsung dari Macro Runnernya.

Convert Excel ke PDF Menggunakan VBA Excel

Convert Excel ke PDF Menggunakan VBA ExcelTujuan konversi file excel menjadi PDF adalah untuk memudahkan pembaca melihat data dengan tampilan yang mirip seperti buku elektronik. Sebenarnya, anda bisa saja mengubah file excel dan mem-publishnya menjadi PDF melalui menu File - Save & Send.

Namun, bagi programer dan developer, mereka terkadang membutuhkan perintah yang lebih sintaksis dan programatikal. Dan metode tersebut dapat dilakukan dengan menggunakan bahasa pemrograman VBA (Visual Basic for Application) atau dengan bantuan Macro.

Nah, pada kesempatan ini, anda akan belajar bagaimana cara membuat perintah konversi dari sheet tertentu menjadi sebuah buku PDF. Mari simak cara convert excel ke PDF menggunakan VBA Excel dibawah ini:
  1. Buka Microsoft Excel
  2. Langsung saja tekan Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
  3. Buat sebuah module, kemudian isi dengan kode berikut:
    Sub SimpanSheetToPDF()
    '*****************************************************
    'Code Created By Heru Monas P
    'Purwokerto , 03 Okt 2015 , GSP RE 5
    '*****************************************************
    'Buat Rekan yang berminat belajar dasar VBA / Macro Secara Private
    'Atau memerlukan jasa pembuatan Macro untuk mempermudah pekerjaan
    'Atau memerlukan jasa pembuatan aplikasi berbasis Excel
    'Bisa menghuungi Saya
    '*****************************************************
    'Pembuatan Code Macro pada File ini saya rekam dalam video tutorial
    'Dengan judul yang sama dengan nama File
    'Bagi yang berminat , bisa menghubungi saya
    'Semoga File ini bermanfaat
    '*****************************************************
    ThisWorkbook.ExportAsFixedFormat xlTypePDF, "Hasil Konvert File Excel", xlqualitystandart, False, True, 2, 5, True
    MsgBox "sudah di konvert ke PDF" & vbCrLf & " Nama File Hasil Konvert File Excel.pdf"
    End Sub
  4. Buat juga sebuah tombol (anda dapat menggunakan shape atau command button).
  5. Rancang dan desainlah Sheet 1 kurang lebih jadi seperti dibawah ini:
    Convert Excel ke PDF Menggunakan VBA Excel
    Sheet 1 (klik untuk memperbesar)
  6. Rancang juga untuk Sheet 2, kurang lebih seperti gambar dibawah, karena kita akan menampilkan PDF dengan konten yang tertuang dalam sheet 2.
    Convert Excel ke PDF Menggunakan VBA Excel
    Sheet 2 (klik untuk memperbesar)
  7. Jika sudah, kembali ke sheet 1, klik kanan pada tombol, pilih Assign Macro dan pilih macro bernama SimpanSheetToPDF.
  8. Selesai. Sekarang tinggal coba klik pada tombol tersebut, maka skrip akan bekerja dan membuka file PDF outputannya secara otomatis.
Itulah cara konversi Microsoft Excel ke PDF Menggunakan Macro VBA Excel. Jika anda mengalami kesulitan dalam memahami kode atau mempraktikannya, anda dapat menanyakannya di kolom komentar dibawah.
Kredit script dan aplikasi: Heru Monas Prasetyo

Mengambil Nilai dari Workbook Lain Dengan VBA Excel


Mengambil Nilai dari Workbook Lain Dengan VBA Excel
Pernahkah anda berpikir untuk mengambil data dari satu workbook kemudian memasukannya kedalam workbook lain? Ambil contoh anda ingin mengambil nilai seorang siswa kemudian memasukkannya pada workbook rekap nilai. Atau anda ingin memasukkan suatu baris data kedalam workbook khusus. Pertanyaan tersebut dapat anda realisasikan dengan melakukan langkah-langkah berikut sebagai jawabannya:
  1. Buka Microsoft Excel
  2. Langsung saja buka Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
  3. Buat sebuah module dan isi dengan kode berikut
    Sub AmbilNilai()
    Dim wb1 As Workbook, wb() As Variant
    Dim wb1Name As String, Lr As Integer, nilai As Variant, wb2Name As String
    wb1Name = ThisWorkbook.Name
    Set wb1 = ActiveWorkbook
    Lr = Range("A" & Rows.Count).End(xlUp).Row + 1
    On Error GoTo er
    wb = Application.GetOpenFilename("Excel Files (*.xls*), (*.xls*)", , , , True)

    For i = 1 To UBound(wb)
        Range("A" & Lr).Value = wb(i)
    Lr = Lr + 1
    Next i
    Lr = 2
    Do Until IsEmpty(Range("A" & Lr))
    Application.DisplayAlerts = False

    Workbooks.Open (Range("A" & Lr))
    wb2Name = ActiveWorkbook.Name
        nilai = ActiveSheet.Range("A1").Value
        If nilai = "" Then
            nilai = "tidak ada data"
        End If
    Workbooks(wb2Name).Close False
    Workbooks(wb1Name).Activate
    Sheet1.Range("B" & Lr) = nilai
    Lr = Lr + 1
    Loop
    MsgBox "Data Sudah di update"

    Exit Sub
    er:
    End Sub
  4. Buat sebuah tombol (anda dapat menggunakan shape atau command button)
  5. Assign tombol dengan macro kode diatas
  6. Buatlah rancangan tabel sebagai berikut:
    Mengambil Nilai dari Workbook Lain Dengan VBA Excel
    Rancangan tabel
  7. Akan muncul dialog box, pilih file workbook yang ingin anda ambil data didalamnya.
  8. Karena pada kode diatas sudah didefine untuk mengambil data pada sel "A1", maka data workbook yang anda pilih tadi akan diambil datanya pada sel "A1" kedalam kolom B.
Itulah cara mengambil nilai dari workbook lain dengan menggunakan Macro VBA Excel. Jika anda mengalami kesulitan dalam memahami kode atau mempraktikannya, anda dapat menanyakannya di kolom komentar dibawah. Terimakasih.

Kredit: Heru Monas Prasetyo

    Cara Mudah Membuat Log Out Pada VBA Excel

    Sebelum mencoba tutorial ini, anda harus menguasai Cara Membuat Login Pada VBA Excel terlebih dahulu, karena script dan aplikasinya saling berkorelasi dan merupakan bentuk lanjutan dari tutorial sebelumnya. Pada tutorial ini anda akan mengetahui cara membuat menu log out dengan menggunakan VBA Excel.

    Langsung saja ikuti langkah-langkah dibawah:
    1. Buka Microsof Excel
    2. Open file hasil tutorial sebelumnya, atau anda dapat mengunduhnya disini.
    3. Langsung saja buka Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
    4. Buat sebuah Module baru dan isi dengan kode berikut:
      Sub logOut()
      x = MsgBox("Anda yakin akan keluar?", vbYesNo, "Konfimasi")
      If x = vbYes Then
          Sheets(1).Range("A1048576").Select
          frmLogin.Show
      End If
      End Sub
    5. Kemudian tambahkan kode dibawah pada frmLogin. Caranya klik kanan pada frmLogin - View Code, paste kode berikut tepat dibawah kode yang sudah tersedia:
      '
      '
      ' Membuat tombol Log Out
      ActiveSheet.Shapes.AddShape(msoShapeRectangle, 3, 3, 83.25, 41.25).Select
      Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "Keluar"
      With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6). _
          ParagraphFormat
          .Alignment = msoAlignCenter
      End With
      With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6).Font
          .Fill.Visible = msoTrue
          .Fill.ForeColor.ObjectThemeColor = msoThemeColorLight1
          .Fill.Solid
      End With
      Selection.OnAction = "logOut"
    6. Selesai! Sekarang anda dapat mengetest-nya dengan cara mengclose-nya kemudian membukanya kembali dan lihat hasilnya.

    Penjelasan kode VBA diatas:

    Sub logOut()
    x = MsgBox("Anda yakin akan keluar?", vbYesNo, "Konfimasi")
    If x = vbYes Then
        Sheets(1).Range("A1048576").Select
        frmLogin.Show
    End If
    End Sub

    Kode diatas merupakan prosedur yang memiliki kegunaan sebagai berikut:
    • MsgBox: memberikan konfirmasi jika hendak logout
    • Jika tombol Yes dipilih, maka sel akan aktif ke range terbawah dan menampilkan Form Login kembali
    Sekarang perhatikan kode berikut:
    ' Membuat tombol Log Out
    ActiveSheet.Shapes.AddShape(msoShapeRectangle, 3, 3, 83.25, 41.25).Select
    Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "Keluar"
    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6). _
        ParagraphFormat
        .Alignment = msoAlignCenter
    End With
    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6).Font
        .Fill.Visible = msoTrue
        .Fill.ForeColor.ObjectThemeColor = msoThemeColorLight1
        .Fill.Solid
    End With
    Selection.OnAction = "logOut"

    Kode diatas akan berjalan apabila tombol Masuk pada Form Login ditekan, adan akan meng-generate tombol logout untuk keluar dari aplikasi tersebut. Inti dari kode diatas adalah:
    • Membuat shape yang berguna untuk memanggil prosedur logOut seperti yang sudah kita buat diatas. Dengan tombol tersebut, anda dapat keluar dari aplikasi dan melepas hak akses terhadap workbook tersebut.
    Jika anda masih kebingungan, anda dapat mengunduh video tutorial cara membuat log out menggunakan VBA Excel dibawah. Ukuran video hanya sebesar 1, MB, tapi setelah diekstrak menjadi 40 MB.

    Mudah Membuat Form Login Menggunakan VBA Excel + Video Tutorial

    Mungkin anda akan memerlukan form login untuk melindungi privasi data excel anda. Privasi yang dimaksud dapat terlindungi dengan membangun proteksi lewat VBA Excel. Meskipun sebenarnya Microsoft Excel sudah menyediakan proteksi manual agar tidak terjadi pencurian data maupun pembukaan data anda yang mendandung privasi.

    Nah, seperti judul diatas, saya akan mencoba menjelaskan cara membuat form login sederhana pada Microsoft Excel. Kali ini saya akan membuat aplikasi proteksi workbook yang mana setiap user harus memasukkan data login terlebih dahulu agar bisa mengakses data tersebut.

    Ikuti langkah-langkah mudah dibawah ini:
    1. Jalankan Microsoft Excel.
    2. Simpan workbook dalam format ekstensi Excel Macro Enabled (*xlsm).
    3. Langsung saja buka Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
    4. Buat sebuah UserForm dengan ketentuan form dibawah ini. Ubah nama UserForm-nya menjadi frmLogin.
      • 2 buah label dan ganti kedua caption-nya menjadi Nama User dan Kata Sandi.
      • 2 buah textbox dan ganti nama-nya (name) menjadi txtUser dan txtPass.
      • 1 Command Button dengan nama cmdLogin dan caption Masuk.
    5. Susunlah label, textbox dan juga button seperti gambar dibawah ini:
      desain form vba excel
      Anda dapat mendesainnya sesua anda



    6. Klik kanan pada UserForm, pilih View Code, hapus semua baris kode yang ada dan gantikan dengan kode berikut: Private Sub cmdLogin_Click()
      Dim strUser, strPass As String
      strUser = "admin"
      strPass = "admin"
      If txtUser.Value = "" Then
          MsgBox "Silahkan Masukkan Nama User", _
          vbExclamation + vbOKOnly, "Nama User tidak boleh kosong"
          txtUser.SetFocus
          Exit Sub
      ElseIf txtPass.Value = "" Then
          MsgBox "Silahkan Masukkan Kata Sandi", _
          vbExclamation + vbOKOnly, "Kata Sandi tidak boleh kosong"
          txtPass.SetFocus
          Exit Sub
      ElseIf txtUser.Value <> strUser Then
          MsgBox "Nama User '" & txtUser & "' tidak terdaftar", _
          vbCritical + vbOKOnly, "Terjadi kesalahan"
          txtUser.SetFocus
          Exit Sub
      ElseIf txtPass.Value <> strPass Then
          MsgBox "Kata sandi Salah, Silahkan ulangi lagi", _
          vbCritical + vbOKOnly, "Terjadi kesalahan"
          txtPass.SetFocus
          Exit Sub
      End If
      MsgBox "Selamat Anda berhasil Login", _
          vbInformation + vbOKOnly, "Login berhasil!"
      Me.Hide
      Sheets(1).Range("A1").Activate
      End Sub

      Private Sub UserForm_Terminate()
      Application.Quit
      End Sub
    7. Agar UserForm muncul ketika workbook dibuka, tambahkan script berikut ke dalam kode Workbook anda (This Workbook).
      Private Sub Workbook_Open()
      Sheets(1).Range("A1048576").Select
      frmLogin.Show
      End Sub
    8. Jalankan form tersebut dengan menekan tombol F5 atau gunakan tombol Run Macro pada toolbar, kemudian lihat hasilnya.

    Penjelasan kode VBA diatas:

    Private Sub cmdLogin_Click()
    ...
    End Sub

    kode diatas maksudnya adalah bahwa program ... akan berjalan ketika tombol cmdLogin diklik.
    If txtUser.Text = "" Then
        MsgBox "Silahkan Masukkan Nama User", _
        vbExclamation + vbOKOnly, "Nama User tidak boleh kosong"
        txtUser.SetFocus
        Exit Sub
    ...

    Penggunaan If dan Else untuk memberikan conditioning atau persyaratan. Kode diatas berfungsi untuk memberikan persyaratan jika nilai txtUser adalah "" (kosong), maka akan memunculkan pesan (MsgBox).

    Berlaku juga dengan kode ElseIf, yang akan menciptakan percabangan lagi, dan setiap kode yang syaratnya terpenuhi maka akan dijalankan.
    Private Sub UserForm_Terminate()
    Application.Quit
    End Sub

    Kode diatas adalah perintah untuk mengakhiri aplikasi (termasuk workbook) jika UserForm di terminate (keluar).

    Tutorial Mudah Berbentuk Video

    Jika anda masih kebingungan, anda dapat mengunduh video tutorial cara membuat form login menggunakan VBA Excel dibawah. Ukuran video hanya sebesar 1,5 MB, tapi setelah diekstrak menjadi 80 MB.

      5 Contoh Membuat Aplikasi VBA Excel Sederhana!

      Visual Basic for ApplicationMacro VBA Excel, adalah sebuah fitur yang dimiliki oleh Microsoft Excel. Dengan memanfaatkan Macro VBA, anda dapat menciptakan aplikasi baru yang mempermudah pekerjaan anda menggunakan Microsoft Excel. 

      Untuk dapat menguasai dan memahami VBA pada Excel, anda perlu mengetahui dasar hingga cara membuat aplikasi pada VBA sederhana terlebih dahulu. Selain itu, VBA (Visual Basic for Application) termasuk bahasa pemrograman yang hampir mirip sintaksnya dengan VB6 (Visual Basic 6). Sehingga, bagi anda yang menyukai bahasa pemrograman tersebut, kemungkinan akan tertantang dan lebih mudah menguasai VBA nantinya.

      Sebelum membuat program sederhana VBA pada Excel, anda perlu mengaktifkan satu menu, yaitu menu Developer, dimana menu tersebut berisikan perintah khusus yang akan menunjang pekerjaan anda dalam koding VBA.
      Berikut ini adalah 5 Contoh Membuat Aplikasi VBA Excel Sederhana.

      1. Membuat Aplikasi VBA Input Otomatis Sederhana

      • Langkah awal adalah membuka Ms. Excel anda.
      • Buka Menu Developer dan klik View Code
      • Masukkan kode berikut:
      Sub InputDataPalingSederhana()
      Cells(1, 1) = "Contoh Aplikasi VBA Macro Sederhana"
      'Cells(1, 1) berarti baris ke-1 di kolom ke-1
      End Sub

      Anda dapat menaruhnya di dalam module maupun didalam sheet-nya langsung (contoh: Sheet1). Tapi saya menyarankan untuk membuat module baru, kemudian menaruhnya di dalam module, agar sub dan fungsi tersusun dengan rapi.

      Setelah menaruh kode diatas kedalam module, anda dapat membuat tombol baru di Workbook Excel dengan cara klik Insert di Menu Developer, kemudian pilih Button di Form Controls.

      Alokasikan ukuran dan bentuk tombol, kemudian klik dan pilih sub yang sudah dibuat tadi, yaitu InputDataPalingSederhana. Setelah itu coba klik pada tombol tersebut dan lihat yang terjadi.

      2. Menyalin/Copy Data Sederhana Menggunakan VBA

      Sebenarnya tutorial ini pernah saya buat di postingan:
      Tapi saya sengaja membuatnya lagi dengan cara yang lebih simple. Pertama buatlah data sebagai berikut:

      Excel Data
      Data
      Cara awalnya sama seperti sebelumnya, tapi kode-nya berbeda, yaitu sebagai berikut:
      'Dengan sub ini, anda akan mengcopy data dari Range ("A1:B10") ke Range(E1") Sub CopySederhana()

      Range("A1:B10").Copy Destination:=Range("E1")
      'Mendestinasikan penyalinan (opsional)

      Range("A1:B10").Copy
      'Mengcopy range diatas

      Range("E1").Select
      'Mengaktifkan range diatas

      ActiveSheet.Paste
      'Menyalin data ke range yang sudah diaktifkan

      Application.CutCopyMode = False
      'Untuk menghilangkan selection bekas cut/copy

      End Sub

      3. Merubah Warna Font Sederhana Menggunakan VBA

      Buat terlebih dahulu tulisan di sel B4. Tulisan tersebut nantinya akan diubah warnanya menggunakan VBA. Anda perlu memahami dan menggunakan kode berikut:
      'Sub ini akan memodifikasi style sel baris ke-4 dan kolom ke-2 ("B4")
      Sub GantiWarna()

      'Cara 1: Menggunakan Cells
      Cells(4, 2).Font.ColorIndex = 3
      '3 adalah indeks dari warna merah

      'Cara 2: Menggunakan Range
      Range("B4").Font.ColorIndex = 3

      'Cara 3: Menggunakan RGB untuk komposisi warna
      Cells(4, 2).Font.Color = RGB(255, 0, 0)

      'Menggunakan Range dan RGB
      Range("B4").Font.Color = RGB(255, 0, 0)

      End Sub

      4. Menyisipkan Hyperlink kedalam teks dengan VBA

      Buatlah terlebih dahulu tulisan, terserah anda, misalnya "alvian-cs blog" di sel A5. Kemudian gunakan kode berikut didalam module, dan panggil lewat macro (tombol).
      Sub BuatHyperlink()
      ActiveSheet.Hyperlinks.Add Range("A5"), "http://www.alvian-cs.blogspot.com"
      'Menambahkan hyperlink pada range A5
      End Sub

      5. Menyisipkan Formula kedalam Excel lewat VBA

      Anda dapat menyisipkan formula lewat VBA. Contoh kode-nya adalah sebagai berikut:
      Sub SisipkanFormula()
      Range("A1:A5000").Value = "=ROW()"
      End Sub
      Dengan kode diatas, anda akan memasukkan nilai dari range A1 hingga A5000 berisi formula "=ROW()", yang mana akan memunculkan nomor baris.

      Cara Mengcopy Data Otomatis Menggunakan VBA Macro Excel

      Mengcopy data secara otomatis akan memudahkan anda, ketimbang harus menekan tombol ctrl + c secara terus-terusan setiap ingin menyalin data. Dengan memanfaatkan fitur Ms. Excel, VBA Macro, anda dapat mempermudah pekerjaan tersebut. Dengan hanya membuat satu macro berisikan perintah-perintah tertentu, anda dapat membuat sebuah program pengcopy otomatis.

      Seorang netizen bernama Yohanes, mengeluhkan masalah program excel-nya bahwa dia ingin menyalin data secara otomatis menggunakan macro excel. Kemudian saya berinisiatif untuk membuat postingan ini untuk membantu beliau memecahkan masalahnya. Program berikut adalah tentang bagaimana cara menyalin data secara otomatis menggunakan VBA Macro Excel.

      Langkah #1: Aktifkan Tab Developer

      Jika anda masih baru dalam menggunakan macro, dan tidak tahu cara mengaktifkan menu developer pada excel, silakan lihat postingan ini:

      Langkah #2: Membuat Data

      Anda dapat membuat rumpunan data yang dibuat seperti tabel. Untuk lebih jelasnya, anda bisa meniru contoh data milik Mas Yohanes dibawah ini:

      Anda dapat meletakannya pada Sheet1:
      Tabel Microsoft Excel
      Sheet 1
      Ini adalah hasil salinan yang dapat anda letakkan pada Sheet2:
      Tabel Microsoft Excel
      Sheet 2

      Langkah #3: Membuka Code Editor

      Untuk membuka code editor pada excel, silakan buka menu developer anda, kemudian pilih view code. Jika kode editor sudah muncul, silakan membuat module baru kemudian tambahkan kode berikut didalamnya:
      Sub Copy()
      ' Copy Macro
          Sheets(1).Select
          Range("A2").Offset(1, 0).Select
          Range(Selection, Selection.End(xlToRight)).Select
          Range(Selection, Selection.End(xlDown)).Select
          Selection.Copy
          Sheets(2).Select
          If Range("A1").Offset(1, 0).Value = "" Then
              Range("A1").Offset(1, 0).Select
          Else
              Range("A1").End(xlDown).Offset(1, 0).Select
          End If
              ActiveSheet.Paste
          Sheets(1).Select
          Range("A1048576").ClearContents
          MsgBox "Penyalinan berhasil!", vbInformation, "Informasi"
      End Sub 

      Langkah #4: Membuat tombol

      Untuk membuat tombol, anda bisa memanfaatkan shapes (Insert > Shapes) yang kemudian disulap menjadi sebuah tombol, lengkap dengan caption-nya. Setelah itu klik kanan pada tombol tersebut, dan klik Assign Macro. Di dalam daftar macro, pilih macro bernama Copy, kemudian klik OK.

      Hasil akhirnya adalah sebagai berikut:
      cara menyalin data secara otomatis dengan VBA Excel
      Hasil akhir
      Selesai. Silakan anda coba dan lihat hasilnya. Jika terdapat kesalahan atau anda mengharapkan improvisasi terhadap program diatas, silakan sampaikan lewat kolom komentar, dan saya akan berusaha memperbaikinya.

      Apabila anda memiliki masalah berkenaan dengan program excel anda, jangan sungkan untuk mengemail saya di arubiandesu@gmail.com dan akan saya buatkan tutorial-nya secara cuma-cuma.

      File asli milik: Yohanes Sefrianto Laga Keraf
      Dimodifikasi oleh Alvian Casablancas

      Download file lengkapnya (16kb)

      Memindahkan SMS ke Komputer Menggunakan Excel

      SMS History pada vba excel
      Screenshot SMS History Menggunakan Excel
      Pernahkah sobat bertanya bagaimana caranya memindahkan SMS yang ada di HP kedalam Laptop atau Komputer? Sebenarnya caranya cukup mudah, dan bahkan sobat dapat membuat SMS History sendiri, sehingga bisa jadi seperti diary.

      SMS History adalah rumpunan SMS berupa laporan atau rincian secara keseluruhan yang menjabarkan riwayat SMS di handphone anda. Dengan SMS History, sobat dapat menyimpan sms-sms sobat tanpa harus menghapusnya. 

      Mengapa Tidak Menghapusnya Saja?

      Terkadang riwayat SMS penting karena bisa menjadi data yang sewaktu-waktu diperlukan. Dalam kasus tertentu, riwayat SMS bisa dijadikan kenangan atas percakapan yang sobat lakukan dengan seseorang. Sehingga, terkadang kita enggan untuk menghapus riwayat SMS.

      Riwayat SMS ini mirip dengan chat history pada sosial media yang sering sobat lakukan misalnya seperti di BBM, Pesan Facebook, DM Twitter, ataupun chat history lainnya.

      Sekarang Saya akan berbagi cara mudah membuat SMS History tanpa keterlibatan koneksi internet/online dengan bermodalkan:
      • Microsoft Excel
      • SMS Backup & Restore (Gratis)
      • Media Penyimpanan untuk memindah data SMS ke komputer
      Sederhana bukan? Hanya memerlukan tiga aplikasi saja sobat sudah bisa membuat aplikasi SMS History yang dapat dibuka melalui komputer sobat.

      Caranya?

      Karena mayoritas banyak yang menggunakan OS Android, maka saya membuat tutorial ini untuk pengguna Android dan sejenisnya.
      1. Download terlebih dahulu aplikasi SMS Backup & Restore di Play Store (link ada dibawah).
      2. Install SMS Backup & Restore di handphone sobat.
      3. Jalankan aplikasinya

        backup data SMS
      4.  Ketuk tombol "Backup" untuk melakukan proses backup SMSnya.

      5. Set pengaturan seperti diatas. Setting tersebut agar kita dapat mengekspor SMS kita dengan ketentuan menyimpan seluruh percakapan dan juga tanpa mengunggah ke media penyimpanan online.

        Backup data SMS
      6. Jika sudah selesai maka akan muncul laporan pengeksporannya dan data sms sudah tersimpan. Sobat dapat menutup aplikasi, memindah data sms ke komputer dan beralih ke tahap selanjutnya.

      Memindahkan data SMS ke Excel

      Sekarang kita akan mengimpor data SMS kedalam Microsoft Excel. Untuk memasukkan file SMS yang sudah kita backup tadi, lakukan langkah-langkah berikut:
      • Buka Microsoft Excel.
      • Klik pada menu Data 
      • Pilih From Other Sources
      • Klik From XML Data Import.
      Excel akan meminta untuk mengalokasikan file SMSnya. Secara default file SMS terletak di folder SMSBackupRestore di kartu SD sobat. Pilih file yang berekstensi *.xml.

      Data akan terimpor seperti pada gambar berikut:

      Impor data SMS

      Menambahkan Sedikit Rumus Excel

      Hapus beberapa kolom yang tidak penting dan sisakan beberapa kolom sebagai berikut:

      Impor data SMS

      Agar format bawaan tidak mengganggu, kita hapus dulu formatnya dengan cara menekan CTRL + A untuk menyeleksi keseluruhan sel, kemudian pada menu Home > Pilih gambar penghapus dibawah ini:

      Clear contents pada excel

      Lalu klik Clear Formats. Tampilan akan distandarisasi seperti format awal.

      Tambahkan kolom baru disebelah kiri kolom body. Untuk menambahkan kolom sobat bisa menekan klik kanan pada Kolom E, kolom diatas header kolom body, kemudian pilih Insert. Akan muncul kolom baru, kolom ini akan digunakan untuk menampilkan hari.

      Menambahkan kolom Excel

      Oh iya hampir lupa, sebelum lanjut coba sobat aktifkan dulu Menu Developer, kita akan membuat user-defined function terlebih dahulu untuk menentukan hari lewat tanggal pengiriman SMS.

      Pada Menu Developer, klik View Code untuk menampilkan kode editor. Kita buat satu module yaitu dengan cara klik kanan pada VBAProject kemudian pilih Insert dan klik module.

      Copykan sintaks VBA dibawah ini kedalam module yang dibuat tadi:

      Option Explicit
      Function WEEKDAYNAME(day As Long) As String
      Dim x As String
      If day = 2 Then
      x = "Senin"
      ElseIf day = 3 Then
      x = "Selasa"
      ElseIf day = 4 Then
      x = "Rabu"
      ElseIf day = 5 Then
      x = "Kamis"
      ElseIf day = 6 Then
      x = "Jum'at"
      ElseIf day = 7 Then
      x = "Sabtu"
      ElseIf day = 1 Then
      x = "Minggu"
      End If
      WEEKDAYNAME = x
      End Function

      Sip, kita sudah membuat function untuk menampilkan hari. Sekarang kembali ke data SMS tadi, kita lanjutkan pada kolom yang sudah kita buat.

      Pada kolom yang sudah kita buat tadi, isikan formula sebagai berikut:

      =IF(LEN(G2)>=17;IF(LEN(G2)=18;weekdayname(WEEKDAY((LEFT(SUBSTITUTE(G2;" ";"-");9))));IF(LEN(G2)=17;weekdayname(WEEKDAY((LEFT(SUBSTITUTE(G2;" ";"-");8))));IF(LEN(G2)=19;weekdayname(WEEKDAY((LEFT(SUBSTITUTE(G2;" ";"-");10)))))));weekdayname(WEEKDAY((LEFT(SUBSTITUTE(G2;".";"-");10))))) 

      Kemudian tekan Enter dan lihat apa yang terjadi.

      Sekarang kita akan membuat Nama Pengirim dengan memanfaatkan kolom contact_name. 
      Kita buat kolom lagi seperti tadi, disamping kolomnya body, kemudian isikan formula sebagai berikut:

      =IF([@type]=1;[@[contact_name]];"Saya")

      Tekan Enter dan hasil akhirnya seperti ini:

      Membuat SMS History Excel

      Data diatas belum urut, maka kita perlu mengurutkannya agar enak dan mudah dibaca. Kita akan memanfaatkan fitur Sort & Filter.
      • Pada Home, klik fitur Sort & Filter. Kemudian Custom Sort.
      • Kolom Sort by isi dengan 'date' untuk mengurutkan data berdasarkan tanggal.
      • Kolom Order diganti menjadi Largest to Smallest.
      • Klik OK.

      Data akan terurut dan enak dibaca. Aplikai SMS History sobat sudah jadi, namun kurang gagah rasanya jika belum didesain tampilannya. Sobat bisa mendesainnya sendiri sesuai dengan selera dengan menggunakan beberapa fitur yang terdapat pada Excel seperti Fill Color, dan lain sebagainya.

      Tapi masih ada beberapa kolom yang ambigu, sobat bisa menghide-nya agar tidak mengganggu, yaitu dengan cara klik kanan pada Huruf Kolomnya dan pilih Hide. Menyembunyikan data tidak akan memengaruhi data lain. 

      Pada akhirnya, setelah proses desain dan menyembunyikan beberapa kolom yang tidak penting, jadilah aplikasi SMS History Sederhana menggunakan VBA Excel. Untuk menyimpannya, sobat harus menyimpannya dalam tipe file berekstensi *.xltm yaitu file berekstensi Macro Aktif.

      Membuat SMS History Excel

      Cara membacanya adalah dari bawah keatas, agar terkesan historis menanjak. Tapi sobat bisa mengubahnya menjadi menurun di Sort & Filter. 

      Jika sobat memiliki pertanyaan, request, atau kesulitan, sobat dapat menanyakannya pada kolom komentar, saya akan mencoba merespon secepat mungkin.

      Download Aplikasi yang diperlukan:

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Halo, nama saya Alvian. Saya akan berbagi tutorial membuat aplikasi Input Data Siswa menggunakan Microsoft Excel. Saran dari saya, gunakan Microsoft Excel terbaru yaitu 2013. Jika anda belum mampu membelinya, gunakan Microsoft Excel 2010/2007 seperti yang saya gunakan.

      Microsoft Excel memang sangat berguna dalam membantu pengolahan data, salah satunya juga sangat membantu dalam mempermudah penginputan data siswa. Teknik yang akan saya bagi adalah menggunakan pemrograman VBA. Caranya cukup mudah, yaitu sebagai berikut:

      Ikuti langkah-langkah berikut:

      1. Mengaktifkan menu Developer.

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Menu Developer merupakan menu yang tersembunyi pada awal kali kita menjalankan Ms. Excel. Dia tidak akan tampil di barisan menu bar, akan tetapi kita bisa mengaktifkannya dengan cara berikut: Cara mengaktifkan menu developer.

      Jika menu/tab developer sudah aktif, silakan melanjutkan ke langkah berikutnya.

      2. Membuat kerangka Entri Data.

      Ini adalah bagian yang menyenangkan menurut saya, karena kita akan mendesain seperti apa tampilan input data siswanya. Buatlah desain kerangka entri data sesuai dengan kepentingan data anda, bisa dibuat di sheet baru atau di sheet yang sudah ada, contohnya seperti ini:

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      *Catatan: Tombol ‘SIMPAN’ dapat anda buat dengan menggunakan shape biasa. Tombol yang saya buat sesuai gambar di atas adalah shape dengan model ‘Rounded Rectangle’. Untuk pembuatan seperti sel, pewarnaan, dan seterusnya dapat anda modif sendiri, anda pasti bisa bukan?

      3. Membuat tampilan daftar siswa.

      Tadi kita sudah membuat input datanya, sekarang kita akan membuat tampilan output dari input data yang kita masukkan, kurang lebih seperti ini:

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Anda bisa membuatnya di sheet yang berbeda (Sheet 2). Sesuaikan tampilan tersebut dengan kebutuhan dalam pengolahan data siswa anda.

      4. Menyisipkan pemrograman VBA

      Disini kita akan bermain sedikit bahasa pemrograman VBA (Visual Basic for Application). Bahasa ini sangat membantu Ms. Excel dalam mengelola data. Untuk memulai koding/pemrograman, klik menu Developer – View Code. Layar Code Editor akan muncul dan dari sinilah kita memulai pemrograman layaknya aplikasi pemrograman lainnya.

      Selanjutnya kita akan membuat Module. Module ini ibarat wadah berisi skrip yang dapat kita panggil (Call) lewat lembar kerja utama Ms. Excel. Selain itu, dengan Module, kode akan lebih rapi dan terstruktur, sehingga kita tidak kebingungan ketika mengeditnya kembali. Cara membuat Module:

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Jika Module sudah dibuat, klik dua kali Module1 dan letakkan kode berikut kedalam Module yang sudah dibuat:

      Sub inputData()
      Dim Baris, totalBaris As Long
      totalBaris = Sheet2.Cells.Rows.Count
      Baris = Sheet2.Cells(totalBaris, 2).End(xlUp).Row + 1

      Sheet2.Range("A" & Baris).Value = "=ROW()-5"
      Sheet2.Range("B" & Baris).Value = Sheet1.Range("D6").Value
      Sheet2.Range("C" & Baris).Value = Sheet1.Range("D8").Value
      Sheet2.Range("D" & Baris).Value = Sheet1.Range("D9").Value
      Sheet2.Range("E" & Baris).Value = Sheet1.Range("D10").Value
      Sheet2.Range("F" & Baris).Value = Sheet1.Range("i10").Value
      Sheet2.Range("G" & Baris).Value = Sheet1.Range("D11").Value
      Sheet2.Range("H" & Baris).Value = Sheet1.Range("D12").Value
      Sheet2.Range("i" & Baris).Value = Sheet1.Range("D13").Value
      Sheet2.Range("j" & Baris).Value = Sheet1.Range("i13").Value
      Sheet2.Range("k" & Baris).Value = Sheet1.Range("D14").Value
      Sheet2.Range("l" & Baris).Value = Sheet1.Range("G14").Value

      MsgBox "Data sudah masuk database"

      Sheet1.Range("D6").Value = ""
      Sheet1.Range("D8").Value = ""
      Sheet1.Range("D9").Value = ""
      Sheet1.Range("D10").Value = ""
      Sheet1.Range("i10").Value = ""
      Sheet1.Range("D11").Value = ""
      Sheet1.Range("D12").Value = ""
      Sheet1.Range("D13").Value = ""
      Sheet1.Range("i13").Value = ""
      Sheet1.Range("D14").Value = ""
      Sheet1.Range("G14").Value = ""
      End Sub

      Kira-kira jadinya seperti ini:

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Tutup Code Editor dan kembali ke lembar kerja utama Ms. Excel.

      5. Menetapkan Macro sebagai Tombol

      Setelah keempat proses diatas dilakukan, sekarang saatnya menetapkan Macro pada tombol yang sudah kita bikin tadi. Macro ini adalah sekumpulan perintah membentuk suatu prosedur dari skrip yang anda tulis di Code Editor VBA.

      Untuk menetapkan Macro, klik kanan pada objek/tombol yang sudah kita buat, yaitu tombol ‘SIMPAN’, pilih Assign Macro. Akan muncul kotak daftar Macro yang sudah kita buat.

      CARA MEMBUAT INPUT DATA SISWA PADA VBA EXCEL

      Pilih Macro yang tersedia dengan nama inputData, karena tadi kita menamainya inputData.

      Selamat, aplikasi Input Data Siswa anda sudah jadi. Tinggal memasukkan data kedalam kotakkan yang tersedia kemudian tekan tombol ‘SIMPAN’, maka data yang diinputkan akan muncul di Sheet tampilan daftar siswa.

      Ternyata mudah bukan membuat aplikasi Input Data Siswa pada Excel menggunakan VBA. Anda juga dapat memodifikasi kontennya untuk membuat aplikasi input data lain seperti input data koperasi, nilai siswa, akuntansi, dan lain sebagainya.

      Jika terdapat kendala/kesulitan dalam membuat aplikasi ini, silakan berkomentar. Apabila anda bingung dengan penjelasan pada bagian koding/skrip VBA, silakan tanyakan di kolom komentar, saya akan segera menjawab pertanyaan-pertanyaan anda. Terimakasih.

      Kredit aplikasi untuk: Heru Monas Prasetyo
      Download file JADI

      5 Tips Penting Dalam Membuat VBA Macro Excel

      (logo: Microsoft Excel 2013)

      Macro memang menguntungkan bagi para pengguna Excel. Dengan fitur tersebut, programer bisa menyimpan banyak waktu karena macro memudahkan mereka dalam melakukan tugas yang bersifat repetitif (berulang-ulang). Sebenarnya anda tidak perlu pintar pemrograman jika ingin mempelajari VBA (Visual Basic fot Application), karena dengan Macro Recorder, anda dapat menciptakan ratusan kode secara instan.

      Pada Ms. Excel 2013, metode merekam aksi menggunakan macro recorder semakin mudah dan bervariasi. Ada banyak cara alternatif yang bisa digunakan, terserah anda ingin menggunakan yang mana tapi yang jelas cara tersebut tergolong mudah.

      Berikut ini adalah 5 tips penting membuat Macro Excel.
       
      1. Nama Macro

      Pertimbangkan dalam membuat nama macro, buatlah agar tidak terlalu panjang, tapi bersifat menjelaskan dari perintah macro itu sendiri, apalagi kalau yang direkam itu banyak. Jadi, anda bisa membedakan file record yang satu dengan lainnya. Sistem penamaan macro tesebut juga menyediakan kolom yang bisa digunakan untuk deskripsi, meskipun banyak orang yang tidak menggunakannya

      Dalam memberi nama macro, anda harus memulainya dengan huruf, selain itu juga tidak boleh mengandung spasi, simbol, atau tanda lainnya. Anda hanya bisa menggunakan huruf, angka, dan underscore setelah huruf pertama diketikan. Maksimal karakter untuk nama sebuah macro adalah 80 karakter.

      2. Gunakan alamat sel yang relatif (bukan absolut)

      Absolut disini sering disebut dengan ‘sel yang terkunci’ jika sel aktif bergerak dan dilambangkan dengan tanda dolar $. Penggunaan absolut dan relatif harus diperhatikan dalam merekam macro. 

      Contohnya saat kita membuat form input data menggunakan macro, setelah kita mengetes macronya, kita pasti menjumpai kejadian seperti data masuk ke sel yang salah, itu adalah akibat dari penggunaan sel absolut.

      Relatif sendiri berarti kita merekam macro dan menjalankan perintah macro tersebut berdasarkan kerelatifan posisi sel saat pertama kita menekan tombol Record Macro.

      Secara default, Excel memrogram pengaturan absolut, tapi kita bisa merubahnya menjadi relatif dengan cara mengaktifkan perintah menu “Use Relative References” di Tab Developer (Baca juga Cara Mengaktifkan Tab Developer).

      Sebelum melakukan perekaman, jika kita ingin melakukan perekaman dengan sel relatif, jangan lupa mengaktifkan “Use Relative References” terlebih dahulu baru mengeklik tombol “Record Macro”.

      3. Selalu memposisikan kursor di sheet pertama

      Kalau anda menggunakan perekaman macro jenis absolut, posisikan kuror sel anda di sel ‘A1’ pada ‘Sheet 1’. Tapi saya menyarankan agar anda selalu menyimpan macro anda di Personal Macro Workbook agar nantinya macro tersebut bisa digunakan kembali di worsheet yang berbeda (universal). 

      4. Manfaatkan Hotkey pada keyboard

      Microsoft menyediakan hotkey (tombol arah) yang sangat berguna dalam membuat macro. Anda bisa menggunakan hotkey seperti Ctrl + Atas/Kiri/Kanan/Bawah untuk menavigasikan kursor secara relatif. Seperti misalnya anda ingin mencapai sel di paling bawah yang mengandung data, anda tinggal menekan tombol Ctrl + Bawah. 

      Jika anda menggunakan mouse untuk menavigasikan sel anda, hal tersebut akan membuat proses macro ribet dan kadang tidak sesuai dengan apa yang diinginkan saat melakukan penambahan, penghapusan, atau pengeditan data. 

      5. Buat macro berukuran kecil namun simple

      Kalau bisa, jangan merekam macro terlalu lama. Rekamlah macro bertahap-tahap agar rapi dan ukurannya tidak terlalu besar. Semakin besar ukuran macro, maka processor akan semakin lama memproses macro tersebut. 

      Dengan waktu pembuatan macro yang pendek, skrip VBA yang dihasilkannya pun juga sedikit, sehingga memudahkan anda untuk melakukan calling (pemanggilan) maupun editing. 

      Cara Menjalankan VBA Excel Menggunakan Button

      Menjalankan perintah skrip dari VBA (Visual Basic for Applications) sangatlah mudah, ada beberapa cara yang dapat dilakukan untuk mengeksekusinya, salah satunya ialah dengan menggunakan tombol Command Button. Command Button merupakan salah satu Control Box (Active X) yang memungkinkan untuk menjalankan sebuah perintah dari baris kode yang ada pada VBA Editor.


      Dengan Command Button ini kita dapat mengeksekusi code - code yang sudah kita tulis di VBA Editor yaitu dengan cara mengeklik tombolnya.

      1. Buat Tombol. Pertama adalah membuat Command Button, klik menu Developer kemudian pada tab Controls pilih Insert > ActiveX Controls > Command Button. Setelah itu tinggal di klik saja pada area yang akan diletakan untuk tombolnya.

      Sebelum itu, apabila pembaca belum mengerti bagaimana cara mengaktifkan menu Developer yang ada pada Ms. Excel, silakan baca postingan ini terlebih dahulu Cara Mengaktifkan Menu Developer


      2.  Pengisian Code. Klik kanan pada tombol yang sudah dibuat kemudian klik View Code, maka code editornya akan muncul, setelah itu kita tinggal menaruh kode scriptnya disini di bawah Private Sub dan diatas End Sub.

      Contoh kode:

      Range("A1").Value = "Hello, World!"

      Masukkan kode tersebut kedalam code editornya sebagai contoh.

      3. Pemberian Nama. Kembali lagi ke Worksheet Ms. Excel. Klik kanan pada Command Button, kemudian klik properties. Window Properties akan muncul, ganti pada bagian Caption sesuai dengan selera kita, maka caption/nama yang tertera pada tombol akan berubah sesuai dengan yang diisikan pada Command Button.


      4. Eksekusi. Untuk menjalankan kode yang telah dituliskan pada code editor tadi, kita harus menekan icon Design Mode yang ada pada tab controls agar tidak aktif, kemudian tinggal klik saja tombolnya, maka perintah akan segera dieksekusi.

      Itulah tadi cara menggunakan tombol sebagai eksekutor untuk menjalankan perintah - perintah kode yang ada pada VBA Editor.

      Cara Mengaktikan Menu Developer Pada Microsoft Excel

      Menu developer adalah menu yang berisi icon - icon yang merepresentasikan perintah - perintah penting untuk developer yang ada pada Microsoft Excel. Mengaktifkan menu ini cukup mudah, namun agar blog kategori VBA (Visual Basic for Applications) Excel lebih rapi maka saya buat tutorial ini secara terpisah.

      Cara mengaktifkan menu developer sedikit berbeda antara Microsoft Excel 2007 dan Microsoft Excel 2010.

      Ms. Excel 2007

      1. Klik menu Office Button yang ada di pojok kiri atas.
      2. Kemudian klik Excel Options.
      3. Dari Excel Options, pada menu Popular, ceklis pada "Show Developer Tab in the Ribbon"
      4. Klik OK, maka menu Developers akan segera tampak.

      Ms. Excel 2010



      1. Langkah pertama adalah klik menu File, kemudian klik pada Options.


      2. Maka dialog box Excel Options akan muncul mirip seperti Ms. Excel 2007.


      3. Kemudian klik Customize Ribbon, kemudian cari dan ceklist pada "Developer", klik OK. Setelah itu, menu Developer akan muncul dipojok kanan Menubar.

      Menu pada Developer berisi menu - menu yang sangat penting bagi para Excel Developer, terdapat Macro Recorder, Visual Basic Code Editor, Control Box (dengan ini Developer mampu membuat control seperti tombol, textfield, dll.), dan XML (Extensible Markup Language).

      Mengenal Property End Pada Pemrograman VBA Excel


      Sebelum itu, apabila pembaca belum mengerti bagaimana cara mengaktifkan menu Developer yang ada pada Ms. Excel, silakan baca postingan ini terlebih dahulu Cara Mengaktifkan Menu Developer.

      Di dalam bahasa pemrograman VBA (Visual Basic for Application) EXCEL terdapat banyak sekali kode sintaks dan rumus - rumus yang sangat berguna untuk dimanfaatkan oleh developer. Salah satu dari sintaks tersebut adalah property end. Property tersebut adalah sintaks pengikut, yang mana dia mengikuti sintaks sebelumnya, contoh:

      Selection.End()

      Property End diatas melengkapi fungsi Selection. Property tersebut berfungsi untuk menavigasikan kursor ke akhir suatu cell pada Worksheet (lembar kerja) Microsoft Excel. Property ini sangat penting digunakan untuk membuat program/aplikasi yang membutuhkan penginputan data dan berkonsep auto-increment.

      Ada beberapa argumen - argumen yang dapat digunakan dalam penggunaan property ini. Simak berikut:

      1. xlUp

      Argumen ini berfungsi untuk menavigasikan kursor ke paling atas, yaitu pada baris pertama atau apabila terdapat suatu cell yang memiliki konten, maka kursor akan menuju cell tersebut. Contoh penggunaannya adalah sebagai berikut:

      Selection.End(xlUp).Select

      Sintaks diatas akan mengarahkan kursor dari posisi cell aktif menuju cell diatasnya hingga dia menemukan cell yang memiliki konten. Apabila konten tidak ditemukan, maka dia akan menuju ke baris paling atas.

      2. XlDown

      Argumen yang satu ini adalah kebalikan dari argumen xlUp, kursor akan mencari konten dibawahnya. Contoh penggunaannya:

      Selection.End(xlDown).Select

      Sintaks diatas akan mengarahkan kursor ke cell yang paling bawah hingga dia menemukan cell yang berisi konten.

      3. XlLeft

      Yang ini sama juga, tapi penggeserannya adalah ke-kiri, kursor akan terarahkan ke sebelah kiri hingga menemukan cell yang memiliki konten. Contoh penggunaannya:

      Selection.End(xlLeft).Select

      4. XlRight

      Kemudian yang terakhir adalah XlRight. Merupakan kebalikan dari XlLeft. Penggunaannya:

      Selection.End(xlRight).Select

      Itulah tadi kegunaan dari property end. Perlu dicatat bahwa contoh diatas bisa kita edit pada bagian Range-nya maupun pada bagian anak property-nya.

      Cara Menggunakan Macro Recorder Excel 2010

      Karena traffic view tentang VBA Macro Excel semakin tinggi, maka saya memutuskan untuk kembali berbagi lagi tutorial tentang VBA Excel. Saya menggunakan Microsoft Excel 2010, dan kali ini saya akan berbagi tentang cara menggunakan dan mengedit Macro Recorder.

      Sebelum itu, apabila pembaca belum mengerti bagaimana cara mengaktifkan menu Developer yang ada pada Ms. Excel, silakan baca postingan ini terlebih dahulu Cara Mengaktifkan Menu Developer.

      Pada awalnya ketika masih belajar VBA, saya masih mengguakan Macro Recorder yang kemudian di sunting lewat Code Editor VBA. Macro Recorder berfungsi untuk merekam segala kejadian/aktivitas yang kita perbuat di lembar kerja Excel. Mungkin beberapa berasumsi bahwa penggunaan Macro Recorder yaitu untuk mengeksekusi kejadian yang pernah direkam agar tidak terjadi ketidakefisiensi waktu, padahal fungsi Macro Recorder tidak sebatas itu saja.

      Macro Recorder juga dapat menjadi sarana kita untuk ber-coding langsung dengan VBA dan kita hanya perlu menyuntingnya saja. Dalam Tutorial ini, saya akan berbagi bagaimana cara menyunting Macro tsb menjadi sesuai yang kita inginkan.

      Langkah pertama, buka dahulu Microsoft Excel. Jangan lupa untuk mengaktifkan menu Developers. Setelah itu, simaklah langkah - langkah berikut:

      1. Pembuatan tabel. Buatlah sebuah tabel terlebih dahulu, terserah diisi apa, disini saya membuat tabel seperti berikut:


      2. Starting. Arahkan dan aktifkan cell pada kolom A (terserah pada baris berapa). Kemudian tekan CTRL + Arah Bawah, maka cell akan berpindah ke cell yang paling bawah yaitu cell A1048576. Hal ini tidaklah terlalu penting, hanya saja kita akan memulai perekaman maka kita harus menentukan titik aktif cell dimana kita mulai merekam, karena segala aktifitas setelah kita mengeklik Macro Recorder maka semua aktifitas yang akan kita lakukan akan terekam menjadi prosedur, maka dari itu kita harus menentukkan titik tersebut terlebih dahulu.


      3. Memulai Macro Recorder. Sekarang kita akan mulai merekam, navigasikan kursor dan klik icon Macro Recorder yang ada pada menu Developer.


      Kemudian akan muncul sebuah dialog box untuk pemberian nama Macro, diisi terserah atau dibiarkan saja kemudian klik OK maka Macro akan selesai dibuat.


      4. Perekaman. Pastikan cell masih aktif dan jangan dipindah - pindah terlebih dahulu. Kemudian, tekan CTRL + Arah Atas untuk mengalokasikan cell ke paling atas. Maka cell akan berhenti dan aktif pada cell A1, hal ini dikarenakan ketika menekan tombol tersebut kursor akan menuju ke cell atasnya yang memiliki konten, karena ada konten dengan tulisan Kode, maka cell akan berhenti di cell tersebut. Setelah itu, tekan Stop Recording pada menu Developer untuk mengakhiri perekaman.

      Sekarang Macro sudah dibuat dengan nama Macro1, klik icon View Code pada menu Developer. Pada Window VBA Project, klik pada sub-folder Module1.


      Disini, Macro yang kita rekam akan muncul dengan berbentuk barisan-barisan kode seperti gambar dibawah ini:


      Sub Macro1() marupakan sebuah sintaks untuk memulai prosedur tersebut, dengan nama Macro1, kita dapat mengganti nama tersebut sesuai dengan keinginan kita. Baris yang diawal dengan tanda petik satu/apostrophe (') itu hanyalah komentar dan tidak memengaruhi pada eksekusi kode. Selection.End(xlUp).Select merupakan sintaks gabungan yang memberikan perintah seleksi cell untuk mengaktifkan yang terdekat cell diatasnya. End Sub berfungsi mengakhiri sebuah Sub/Prosedur makro tersebut.

      Nah, sekarang tambahkan diatas kode End Sub dengan kode berikut:

      ActiveCell.Offset(1,0).Select
      ActiveCell.Value = "=ROW()-1"

      Maksud dari argumen Offset(1,0) merepresentasikan angka pertama sebagai Row/Baris dan angka kedua sebagai Column/Kolom. Fungsi ini untuk memindahkan cell yang aktif dengan settingan baris bergeser sebanyak 1 cell dan kolom berpindah 0 cell alias tetap, maka cell A2 akan aktif.

      Value berfungsi untuk memberikan nilai atau value "=ROW()-1" yang mana konten itu saya tulis berupa rumus Formula Excel untuk memberikan penomoran kedalam suatu cell dan cell yang dipilih adalah yang sedang aktif.

      Tutorial Video: