Belajar VBA - Sejarah, Latar Belakang & Mengapa Membutuhkannya
Episode 1 of 25

Belajar VBA - Sejarah, Latar Belakang & Mengapa Membutuhkannya

Menelusuri perjalanan VBA dari kelahirannya di Excel 5 pada 1993 sebagai turunan Visual Basic 6, evolusinya ke VBA 7.0 64-bit dan VBA 7.1, hingga alasan Microsoft terus mempertahankannya di Microsoft 365 dan bagaimana VBA mengotomasi operasi Office yang sebelumnya hanya bisa dilakukan manual

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 0 kita menyiapkan environment — Office dengan VBA 7.1, tab Developer, dan folder lab .xlsm — pada episode ini kita berhenti sejenak dari hands-on dan memahami mengapa VBA ada. Sejarah sebuah bahasa mungkin terasa tidak penting, padahal justru di sanalah letak alasan mengapa desainnya seperti sekarang dan mengapa ia masih bertahan lebih dari 30 tahun.

Mengapa harus memahami sejarah VBA? Karena VBA bukan bahasa yang lahir di ruang rapat strategi — ia lahir dari kebutuhan nyata pengguna Excel yang ingin mengotomasi pekerjaan berulang. Memahami asal-usulnya akan menjelaskan mengapa VBA terlihat "kuno", mengapa ia berbeda dari VB.NET, dan mengapa Microsoft tidak pernah benar-benar membunuhnya.

Lahir dari Visual Basic, Kini di Semua Aplikasi Office

VBA adalah turunan langsung dari Visual Basic 6 — bahasa populer era pra-.NET. Bedanya, VB6 menghasilkan program standalone (.exe), sedangkan VBA disematkan di dalam aplikasi host. VBA pertama kali muncul di Excel 5 pada tahun 1993, menggantikan bahasa macro XLM yang jauh lebih sulit, dan kemudian menyebar ke Word, Access, PowerPoint, dan Outlook.

FaktaDetail
KelahiranExcel 5, 1993
AsalVisual Basic 6 (pre-.NET)
HostExcel, Word, Access, PowerPoint, Outlook
VBA 7.0Office 2010 — menambah dukungan 64-bit
VBA 7.1Office 2013+ hingga Office 2024 & Microsoft 365 (2026)

Kunci evolusinya adalah VBA 7.0 (Office 2010) yang menambahkan dukungan 64-bit melalui kata kunci PtrSafe, dan VBA 7.1 (Office 2013) yang membuat kode lebih stabil lintas versi Office. Keduanya akan kita bedah di episode 19.

Note

Jangan mencampuradukkan VBA dengan VB.NET. VBA berbasis Visual Basic 6 dan hanya berjalan di dalam aplikasi Office; VB.NET adalah bahasa modern .NET yang mandiri. Kode VBA tidak bisa dikompilasi menjadi aplikasi .NET, dan sebaliknya.

Mengapa VBA Bisa Bertahan di Microsoft 365

Sejak Office 2013, Microsoft setiap tahun menghadapi pertanyaan "kapan VBA dibuang?" — dan setiap tahun jawabannya sama: VBA tetap didukung dan diperbarui. Halaman resmi Microsoft bahkan menegaskan "VBA is here to stay" (VBA tetap di sini). Alasannya sederhana: ada ratusan juta file .xlsm di perusahaan-perusahaan di seluruh dunia yang berjalan di atas VBA — dari laporan keuangan, pipeline data, sampai sistem penjualan internal. Memutus dukungan berarti memutus infrastruktur mereka.

Microsoft memang mengarahkan investasi fitur baru ke Script Lab (Office.js) dan Power Automate, tetapi keduanya berdampingan dengan VBA, bukan menggantikannya. Kita bandingkan ekosistem ini secara lengkap di episode 23 dan 24.

Mengapa VBA: Keunggulan Inti

Otomasi Penuh Operasi Office

Hampir semua yang bisa kalian lakukan manual di Office — mengeklik menu, mengisi formula, memfilter tabel, mencetak, mengirim email — bisa diubah menjadi kode. Artinya, tugas yang biasanya memakan 30 menit per hari bisa dijalankan dalam hitungan detik dengan satu klik atau satu jadwal.

Batch Processing

Manusia tidak dirancang untuk mengulang tugas 1.000 kali. VBA dirancang untuk itu. Menggabungkan 50 file laporan bulanan, membersihkan 100.000 baris data, atau mengirim 200 email lampiran — semua adalah kasus klasik yang dikerjakan VBA dengan For Each dan Do While.

Integrasi Antar Aplikasi

VBA bisa mengotomasi aplikasi Office yang berbeda sekaligus melalui OLE Automation: ambil data dari Excel, jadikan dokumen Word, simpan ke Access, lalu kirim lewat Outlook. Topik ini dibahas tuntas di episode 22.

Cuplikan: Excel memanggil Word lewat OLE
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")
wdApp.Visible = True
wdApp.Documents.Add
wdApp.Selection.TypeText "Laporan otomatis dari VBA"

Memperluas Fungsi Office

VBA juga menambah kemampuan yang tidak ada di menu Excel standar: custom function (UDF) untuk formula buatan sendiri, UserForm untuk antarmuka input, dan event handler yang bereaksi otomatis saat sel berubah atau workbook dibuka. Semua ini dibahas mulai episode 7 dan 14.

Kelemahan yang Harus Diketahui Jujur

Agar tidak buta, kenali juga batasannya:

KekuranganDampak
Windows-centricPerilaku berbeda di macOS; Access bahkan tidak ada di macOS
Tanpa threading modernKode berjalan single-thread; tugas berat bisa membekukan UI
KeamananMacro adalah vektor serangan malware paling populer (episode 17)
Tidak lintas platformTidak berjalan di Excel web/online, Android, atau iOS

VBA adalah solusi otomasi desktop offline yang luar biasa — bukan bahasa untuk segala hal. Memahami batas ini akan membantu kalian memilih alat yang tepat di episode 24.

Timeline Singkat

TahunTonggak
1993VBA lahir di Excel 5
1990-anMenyebar ke Word, Access, PowerPoint, Outlook
2010VBA 7.0 — dukungan 64-bit (PtrSafe)
2013VBA 7.1 — versi yang masih dipakai sampai 2026
2018+Microsoft menegaskan VBA tetap didukung, berdampingan dengan Office.js & Power Automate
2026VBA 7.1 masih menjadi standar di Office 2024 & Microsoft 365

Penutup

Pada episode 1 ini, kalian telah menelusuri perjalanan VBA dari kelahirannya di Excel 5 (1993) hingga posisinya yang tetap kokoh di Microsoft 365.

Inti yang harus dibawa pulang:

  • VBA lahir di Excel 5 (1993) sebagai turunan Visual Basic 6; kini ada di semua aplikasi Office.
  • VBA 7.0 menambah 64-bit, VBA 7.1 adalah versi stabil sejak Office 2013.
  • VBA tetap didukung di Microsoft 365 — "VBA is here to stay" — dan tidak kompatibel dengan VB.NET.
  • Keunggulannya: otomasi penuh, batch processing, integrasi lintas aplikasi, dan perluasan fungsi Office.
  • Batasnya: Windows-centric, single-thread, dan rawan keamanan bila dipakai sembrono.

Di episode 2 selanjutnya, kita akan membedah konsep dasar dan arsitektur utama VBA — bagaimana kode berjalan di dalam host application, apa itu Object Model, bagaimana OLE Automation menghubungkan antar aplikasi, serta peran VBE, Project Explorer, Code window, Module, dan Macro Recorder. Sampai jumpa di episode 2!