Cara Membuat Pop Up Notifikasi di Excel VBA dan Google Sheets
Panduan Membuat MsgBox dan Alert Notifikasi
tingkat : MAHIR
Salin Kode (Script) di Sini
Ms Excel VBA

'EXCEL VBA
'----------------------------------------
Sub notifikasi()
Dim respon As VbMsgBoxResult
respon = MsgBox("Apakah yakin akan proses import file?", vbYesNo)
If respon = vbYes Then
'do nothing
Else
Exit Sub
End If
'do your macro here
MsgBox ("Proses import sudah selesai")
End Sub
Google Sheets Apps Script

// GOOGLE SHEETS APPS SCRIPT
// -----------------------------------------
function popupMsgBox() {
// popup message box, untuk konfirmasi
var confirmBox = SpreadsheetApp.getUi();
var respondConfirm = confirmBox.alert (
'silahkan klik Yes untuk konfirmasi?',
confirmBox.ButtonSet.YES_NO);
// jika clicked = No, maka akan cancelled, 'else' tetap jalan codenya
if (respondConfirm === confirmBox.Button.NO) {
confirmBox.alert('tidak jadi diproses');
return;}
SpreadsheetApp.getActive().toast("ππ½ππ½ proses sudah sukses", "notifikasi");
}Apakah Kode Ini Bisa Jalan di Excel & Google Sheets?
| MS EXCEL – VBA | GOOGLE SHEETS – APPSCRIPTS |
|---|---|
| β | β |
Mengapa Anda Butuh Kode Ini?
Saat Anda menjalankan kode makro yang bekerja di latar belakang seperti memproses data, mengekspor atau import file, menghapus ribuan baris, Excel sering kali terlihat diam saja setelah selesai. Tanpa adanya tanda atau pesan penutup, kita (user) pun akan kebingungan dan terus bertanya “Ini prosesnya sudah selesai belum ya, atau malah Excel-nya yang hang?”
Disinilah pentingnya MsgBox, karena Ms Excel VBA dan Google Sheets tanpa MsgBox, ya nggak tau π
π‘Pro Tips agar MsgBox dapat Berjalan Sempurna
Berikut adalah rule of thumb yang selalu saya terapkan disemua project yaitu:
- Tempatkan MsgBox pada awal saat prosedur otomasi berjalan, sebagai “gerbang” konfirmasi ke pengguna
- Tempatkan juga sebagai penutup ketika prosedur sudah selesai, sebagai notifikasi bahwa makro telah sukses atau selesai
- Tempatkan di exit error handling untuk memberi notifikasi ketika makro gagal
- Buatlah sesimpel mungkin dengan message yang pendek dan jelas
Manfaat Nyata untuk Efisiensi Bisnis
Menambahkan fitur notifikasi memberikan dampak positif yang nyata pada operasional automasi:
- Kepastian Kerja: Staf admin atau staf non-teknis langsung tahu kapan tugas mereka selesai dan bisa beralih ke pekerjaan berikutnya tanpa ragu.
- Mencegah Data Ganda: Menghindari risiko pengguna mengklik tombol makro berkali-kali karena mengira sistem tidak merespons, yang sering menyebabkan data ter-input ganda.
- Navigasi yang Jelas: Membantu memandu alur kerja tim, terutama jika setelah tombol diklik ada langkah lanjutan yang harus mereka lakukan.
MsgBox baik pada Excel dan Google Sheets, walau tampak sederhana, tetapi mempunyai peranan yang sangat penting sebagai jembatan teknis, desain, dan proses yang meningkatkan user experience secara menyeluruh.
Persyaratan Teknis
Terdapat beberapa persyaratan teknis agar VBA dan Apps Script ini berjalan yaitu:
- Workbook sudah di save sebagai macro enabled workbook (.xlsm atau .xlsb)
- Macro setting sudah “Enabled VBA macros”, jika belum silahkan baca artikel ini untuk enable macro
- Excel VBA pada artikel ini hanya bekerja dengan menggunakan Windows OS terbaru, tidak kompatibel dengan Mac OS
- Untuk Apps Script, pembaca diharapkan sudah familiar dengan Java Script
- Untuk Apps Script, pastikan sudah approve akses Apps Script, agar macro dapat berjalan
Silahkan membaca sumber lain tentang MsgBox di Ms Excel VBA dari Microsoft dan Google Sheets Apps Script
π‘ Susah? atau proyek anda lebih kompleks?
Tutorial kali ini membutuhkan pemahaman Excel tingkat Mahir. Jika Anda sedang menghadapi proyek kantor yang lebih kompleks, dikejar deadline, atau ingin sistem otomatisasi yang langsung beres tanpa perlu repot coding dari nol, mari diskusikan proyek Anda bersama saya di admin@excelinaja.com.
FAQ – Pertanyaan yang sering ditanyakan
Jawaban: Fungsi utamanya adalah untuk memberikan konfirmasi instan, peringatan error, atau petunjuk interaktif kepada pengguna saat sebuah automasi kode selesai dijalankan. Di dunia kerja, fitur ini sangat penting untuk memastikan admin tahu bahwa proses pemrosesan ribuan baris data laporan bulanan telah sukses dieksekusi tanpa mereka harus mengecek isi tabel secara manual.
Jawaban: getUi().alert() menampilkan kotak pesan modal di tengah layar yang wajib diklik “OK” atau ditutup oleh pengguna sebelum mereka bisa kembali mengedit spreadsheet. Sementara .toast() menampilkan notifikasi melayang yang muncul di pojok kanan bawah layar selama beberapa detik dan akan menghilang otomatis tanpa menghentikan aktivitas kerja pengguna.
Jawaban: Untuk membuat teks pesan turun ke baris baru di Excel VBA, Anda harus menggabungkan string teks menggunakan operator ampersand (&) dan fungsi vbCrLf atau vbNewLine. Contoh penulisan kodenya: MsgBox "Proses Selesai!" & vbCrLf & "Data telah disimpan."
Jawaban: Karena Google Apps Script berbasis JavaScript, Anda tidak bisa menggunakan kode VBA seperti vbCrLf. Cara membuat baris baru di dalam getUi().alert() adalah dengan menyisipkan karakter backslash n (\n) di dalam teks string Anda. Contoh penulisan kodenya: SpreadsheetApp.getUi().alert("Proses Selesai!\nData telah disimpan.");
Jawaban: Masalah ini umumnya terjadi karena dua hal: Makro diblokir oleh sistem keamanan aplikasi atau kesalahan penempatan pemicu (trigger). Pastikan Anda sudah mengaktifkan izin makro (Enable Macros) di pengaturan Excel/Google Sheets, dan pastikan kode program Anda terikat pada tombol button atau event trigger yang tepat seperti onEdit atau onOpen.
