Cara Dan Teknik Mempercepat Aplikasi VBA Excel

Sering sekali Aplikasi VBA Excel terlihat lebih lambat dalam beroperasi dan menjalankan prosesnya. Ini disebabkan oleh berapa filtur yang bekerja otomatis saat Excel dijalankan.
Ilustrasi
Ditambah lagi dengan jumlah data yang banyak sehingga beban aplikasi semakin banyak. Aplikasi yang lambat akan menghambat pekerjaan. 

Pekerjaan yang seharusnya dapat diselesaikan dengan cepat namun selesai diluar jadwal seharusnya.

Setiap pengguna aplikasi sangat menginginkan aplikasi yang dipakainya merupakan aplikasi yang bekerja secara cepat.

Kita perlu Optimalkan kode VBA untuk menjalankan macro lebih cepat.

Saat menjalankan VBA makro berjalan dengan baik agar lebih efisien, menghasilkan kualitas yang baik dari output, untuk menghemat waktu, dan akan terlihat lebih profesional.

Berikut Teknik Mempercepat Proses Menjalankan Aplikasi VBA Excel :

Gunakan kode-kode yang disampaikan pada artikel ini dengan judul Cara Dan Teknik Mempercepat Aplikasi VBA Excel.

Buatlah sebuah experiment untuk melihat kecepatan aplikasi ketika menggunakan kode-kode yang ada dibawah ini

Dengan membuat experiment sendiri anda akan lebih dapat memahami perbedaan ketika menggunakan kode yang diterapkan dalam aplikasi.
  • Turn off Screen Updating

Application.ScreenUpdating = False
'.........Kode yang akan dijalankan.........
Application.ScreenUpdating = True


  • Turn off ‘Automatic Calculations’

Application.Calculation = xlCalculationManual
'.........Kode yang akan dijalankan.........
Application.Calculation = xlCalculationAutomatic


  • Disable Events

Application.EnableEvents = False
'.........Kode yang akan dijalankan.........
Application.EnableEvents = True


  • Menggunakan ‘WITH’ Statement

With Worksheets("Sheet1").Range("A1")
.Value = 100
.Font.Bold = True
End With


  • Hindari Recording Macro

Sangat dianjurkan untuk tidak menggunakan Recording Macro. Recording Macro akan menunjukkan pada effek penampilan data dan memperlambat kecepatan.

Sebagai contoh di Cell "D6" berwarna kuning dan font jadi Bold dengan menggunakan Recording Macro maka kodenya akan seperti dibawah ini  sangat memperlambat kecepatan

Sub Macro1()
' Macro1 Macro
Range("D6").Select
Selection.Font.Bold = True
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 65535
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End Sub

Sementara jika kita menghindari Recording Macro agar kecepatan aplikasi meningkat maka kode VBA ditulis sebagai berikut :

Sub Change_Cell_Font()
With Range("C5")
.Font.Bold = True
.Interior.Color = 65535
End With
End Sub

  • Gunakan vbNullString bukannya ""

Private Sub CommandButton1_Click()
If TextBox1.Value = vbNullString Then
MsgBox " Data Kosong!!", 16, "Aplikasi"
Else
MsgBox " Data ada.!!", 64, "Aplikasi"
End If
End Sub

  • Menghindari Jumlah Baris  dan Menggunakan Titik Dua (:)

Bila kita dapat menulis kode VBA dalam satu baris, kenapa harus menulisnya dengan beberapa baris yang akan memperlambat

Contoh 1

Kita dapat mendeklarasi Variable dengan cara sebaris seperti cara berikut yang akan memberikan effect lebih memcepat aplikasi

Sub Declare_Variables()
Dim cINtaku As Integer, padaMU As Integer  
End Sub

dari pada menulis kode Variable seperti dibawah ini yang akan memberikan effeck memperlambat

Sub Declare_Variables()
Dim cINtaku As Integer
Dim padaMU As Integer
End Sub

Contoh 2
Kita dapat menggunakan titik dua (:) untuk menulis beberapa Variable dalam satu baris dengan cara berikut yang akan mempercepat aplikasi


Sub Use_Colon_ForMultipleLine()
Dim iCnt As Integer, jCnt As Integer
iCnt = 5: jCnt = 10
End Sub

Jangan membuat Variable seperti kode dibawah ini yang akan memperlambat aplikasi


Sub Use_Colon_ForMultipleLine1()
Dim iCnt As Integer, jCnt As Integer
iCnt = 5
jCnt = 10
End Sub

  • Gunakan pendekatan yang terbaik untuk Copy dan Paste

Gunakan Kode seperti dibawah ini bila menggunakan Copy dan Paste agar aplikasi lebih cepat bekerja

Sub CopyPaste_Ex2()
Sheets("Source").Range("A1:E10").Copy Destination:=Sheets("Destination").Range("A1")
End Sub

Jangan gunakan kode untuk keperluan Copy dan Paste seperti kode barikut yang akan memperlambat aplikasi anda

Sub CopyPaste_Ex1()
Sheets("Source").Range("A1:E10").Copy
Sheets("Destination").Range("A1").PasteSpecial
Application.CutCopyMode = False
End Sub
  • Gunakan False dan True untuk perintah menghentikan beberapa hal berikut di excel.
Application.DisplayAlerts = False
Application.DisplayFullScreen = True
Application.Visible = True
Application.DisplayFormulaBar = False
Application.ActiveWindow.DisplayWorkbookTabs = False
Application.ActiveWindow.DisplayHeadings = False
Application.DisplayScrollBars = False

Demikian Posting Teknik Mempercepat Aplikasi VBA Excel. Semoga dapat membantu anda yang ingin aplikasi yang dibuat dapat bekerja dengan effectif. Sharing bersama saya di kolom kementar.

Jika artikel ini dirasakan bermanfaat mohon dapat dishare ke teman-teman lain melalui media sosial.

Sampaikan pertanyaan saran serta kritikan yang membangun secara bijaksana pada kolom komentar yang tersedia dibawah artikel.

4 komentar untuk "Cara Dan Teknik Mempercepat Aplikasi VBA Excel"

  1. Saya masih pemula menggunakan VBa
    terimakasih artikel, sangat bermanfaat.

    BalasHapus
    Balasan
    1. Sama-sama Mas Eko Yuniarto...
      Terimkasih sudah mau berkunjung...
      Pelajarilah Step by step sesuai kebutuhan..

      Hapus
  2. List view yg menampilkan data dr sheet. Saat form dibuka menjadi lambat. Karna data terlalu banyak.apakah ada solusinya?

    BalasHapus
    Balasan
    1. salah satu kelemahan excel jika data terlalu.... terlu banyak.. maka akan lambat merespon..

      Hapus

Komentar Anda Sangat Menentukan Kelangsungan Blog ini