Selasa, 29 Oktober 2019

Mempercepat Aplikasi VBA Excel


Dengan senangnya ketika aplikasi vba ini selesai dikerjakan. Itulah seninya berkarya tetapi sering kali kendala terjadi aplikasi yang kita buat itu terlihat lebih lambat dalam beroperasi dan menjalankan prosesnya. Terutama saat menjalankan module reporting yang memerlukan Looping Rekursif karena data memang dijalankan secara looping one by one dan itu normal secara logika.


Keterlambatan ini bisa jadi karena pengaruh refresh display yang terjadi realtime yang tidak terlihat oleh kasat mata ditambah memang data sangatlah banyak, 

Pekerjaan yang seharusnya dapat diselesaikan dengan cepat namun selesai diluar jadwal seharusnya lebih cepat dan tentunya Setiap pengguna aplikasi sangat menginginkan aplikasi yang dipakainya merupakan aplikasi yang bekerja secara cepat.

Ini disebabkan oleh berapa filtur yang bekerja otomatis saat Excel membuat perlambatan kinerja.

Pertanyaannya, bagaimana untuk membuat proses lebih cepat dari sebelumnya.
Jawabannya kita harus segera mengoptimalkan kinerja kita, hal yang bisa dicoba adalah sebagai berikut :

1. Mematikan Udpate Screen

Coba dengan langkah mematikan udating display dengan cara :


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

2. Sembunyikan Seluruh Display

Coba dengan menyembunyikan display dengan cara :





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


3. Matikan Kalkulasi Otomatis

Coba dengan langkah mematikan kalkulsi otomatis dengan cara :





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



4. Disablekan Event

Coba dengan langkah mematikan Event dengan cara :

Application.EnableEvents = False
'.........Kode yang akan dijalankan.........
Application.EnableEvents = True
5. Gunakan Statement With

Biasakan menggunakan statement with :

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

6. Gunakan vbNullString jangan "" 

Biasakan vbNullString jangan menggunakan "" :


Private Sub CommandButton1_Click()
   If TextBox1.Value = vbNullString Then
      MsgBox " Data Kosong!!", 16, "Aplikasi"
   Else
      MsgBox " Data ada.!!", 64, "Aplikasi"
      End If
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 dari pengalaman pengalaman yang saya gunakan selama membuat aplikasi, mudah mudahan artikel ini sangat bermanfaat.

Jika mau bertanya silahkan di comment, terima kasih





Tidak ada komentar:

Posting Komentar

Social