Skip to content Skip to sidebar Skip to footer

Cara Membuka Aplikasi Office Lain dari Excel dengan Macro VBA

VBA atau Visual Basic for Applications adalah suatu bahasa pemrograman yang diciptakan oleh Microsoft untuk dapat mengotomatiskan operasi-operasi dalam aplikasi yang mendukungnya, diantaranya adalah Excel.

Excel digunakan untuk menghitung dan menganalisis rincian data, meskipun Anda bisa memasukkan bahkan mengedit tulisan di Excel namun untuk memproses suatu tulisan, Excel bukanlah instrumen yang tepat melainkan MS Word.

Dalam Excel, Anda juga bisa membuat database melalui tabel namun tidaklah tepat jika Anda menyebut bahwa Excel sebagai aplikasi untuk menunjang database yang saling terhubung dengan database lainnya melainkan ada sebuah aplikasi khusus yaitu MS Access.

Di Excel juga Anda mungkin bisa membuat grafik berupa bagan atau diagram namun tidak dapat dipresentasikan secara audio visual melalui format slideshow secanggih MS PowerPoint.

Menghubungkan Excel dengan aplikasi Office lainnya ini tidak hanya bertujuan untuk mengubah aplikasi workbook Excel, melainkan membuat aplikasi workbook Excel yang Anda buat tersebut menjadi semakin serbaguna dan lebih mudah dioperasikan bagi siapa saja dalam situasi tertentu.

Istilah otomasi adalah cara programmer Office mengacu pada teknologi VBA yang memiliki kemampuan untuk memanipulasi objek aplikasi Office lainnya.

Perbedaan diantara aplikasi-aplikasi Office terletak pada model objek. 

Masing-masing aplikasi Office memiliki kemampuan untuk membuat jalan masuk atau akses pada model objek lainnya.

Dengan demikian, mengetahui bagaimana membuat suatu tautan pada model objek aplikasi Office merupakan kunci utama bagi seorang programmer untuk dapat mengendalikan aplikasi Office yang lain.

Meskipun VBA adalah bahasa pemrograman biasa diantara aplikasi Office namun model objek masing-masing memiliki karakteristik yang berbeda-beda.

Contohnya, meskipun Word dan Excel memiliki objek Range akan tetapi properti keduanya berbeda.

Agar Excel dapat membuka jalan masuk kepada model objek aplikasi Office lainnya, maka menetapkan suatu sambungan diperlukan pada aplikasi yang menjadi sasaran.

Ada dua cara untuk melakukan verifikasi atau pemeriksaan kebenaran terhadap objek dan perintah untuk memanipulasi metode dan properti objek agar dapat dinyatakan berlaku.


Cara Pertama

Cara pertama adalah dengan menetapkan acuan kepada object library aplikasi yang menjadi sasaran sebelum kode macro dibuat.

Sebagai contoh jika Anda menggunakan Office 2003 dan Anda ingin membuat kode macro untuk membuka dan mengedit sebuah dokumen Word, maka yang harus Anda tetapkan terlebih dahulu adalah acuan kepada Microsoft Word 11.0 Object Library yang bisa Anda lakukan melalui VBE yaitu pada menu Tools > References.

Ketahui bahwa versi Office dibaca VBA berupa nomor, bukan nama versinya, seperti Office 2003 yang dibaca sebagai versi 11, Office 2007 dibaca sebagai versi 12, Office 2010 sebagai versi 14, Office 2013 sebagai versi 15, dan Office 2016 sebagai 16.

Berikut kode macro sederhana untuk memberikan perintah membuka dokumen Word menggunakan cara pertama:

Sub CaraPertama()
Dim A As Word.Application, B As Word.Document
Set A = New Word.Application
A.Visible = True
Set B =
A.Documents.Open(Filename:="C:\Alamat\File\Anda\namafile.docx")
End Sub

Jika objek acuan dinyatakan tidak ada dalam komputer maka VBA akan memunculkan Compile error: User-defined type not defined.

Cara pertama ini membuat macro yang telah Anda buat tidak akan dapat bekerja jika Anda mengupgrade versi Office yang baru sehingga macro tersebut harus diedit agar tidak mengacu pada versi sebelumnya yang sudah ketinggalan.


Cara Kedua

Cara kedua ini lebih singkat karena tidak memerlukan acuan, melainkan kode sebagai perintah untuk membuat objek:

Sub CaraKedua()
Dim A As Object, B As Object
Set A = CreateObject("Word.Application")
A.Visible = True
Set B =
A.Documents.Open(Filename:="C:\Alamat\File\Anda\namafile.docx")
End Sub

Kode ini melakukan tugasnya di balik layar mencari aplikasi yang tepat bagi kode Anda, maka tidak heran jika cara kedua ini mungkin akan memakan waktu yang lebih lama.

Contoh lain yang bisa Anda coba untuk menangani kasus versi Office yang tidak diketahui adalah pada susunan kode macro di bawah ini yang menggunakan cara kedua untuk membuka file presentasi PowerPoint.

Anda harus membuat file PowerPoint terlebih dahulu jika belum ada file PowerPoint di komputer Anda.

Berikut langkah-langkahnya:

1. Buka Alt+F11 untuk membuka VBE.

2. Buka menu Insert > Module.

3. Ketik pada module lalu tekan Enter:

Sub BukaPowerPoint()

4. Tentukan contoh variabel berikut:

Dim A As String, B As String, C As String

5. Tetapkan A sebagai alamat folder dan B sebagai nama file PowerPoint:

A = "C:\Alamat\File\Anda\"

B = "FilePowerPoint1"

6. Statement Val digunakan untuk memastikan versi aplikasi Office dinyatakan sebagai nomor versi kurang dari atau sama dengan versi 11 yang mana merupakan versi 2003.

If Val(Application.Version) <= 11 Then
C = ".ppt"
Else
C = ".pptx"
End If

7. Variabel objek D dan menetapkan metode CreateObject yang merupakan cara kedua:

Dim D As Object
Set D = CreateObject("PowerPoint.Application")

8. Pastikan aplikasi PowerPoint ditampilkan di layar:

D.Visible = True

9. Statement Open mengkombinasikan variabel alamat folder, nama file dan jenis ekstensi file:

D.Presentations.Open Filename:=A & B & C

10. Kode lengkapnya akan terlihat seperti ini;

Sub BukaPowerPoint()
Dim A As String, B As String, C As String
A = "C:\Alamat\File\Anda\"
B = "FilePowerPoint1"
If Val(Application.Version) <= 11 Then
C = ".ppt"
Else
C = ".pptx"
End If
Dim D As Object
Set D = CreateObject("PowerPoint.Application")
D.Visible = True
D.Presentations.Open Filename:=A & B & C
End Sub

11. Tekan Alt+Q untuk kembali ke worksheet dan tekan Alt+F8 untuk menampilkan kotak dialog macro dan silakan anda tes macro dengan memilih BukaPowerPoint lalu klik tombol Run.