VBA MsgBox (Ya/Tidak)

VBA MsgBox (Ya/Tidak)

Excel VBA MsgBox (Ya/Tidak)

Di VBA , dengan menggunakan kotak pesan, kita dapat membuat yes no msgbox , yang digunakan untuk merekam input pengguna berdasarkan klik ya atau tidak. Sintaks untuk membuat kotak pesan ya-tidak adalah sebagai berikut variabel = MsgBox(“Teks”, vbQuestion + vbYesNo + vbDefaultButton2, “Judul Kotak Pesan”) di mana seseorang harus mendeklarasikan variabel sebagai bilangan bulat.

Dalam pengkodean VBA, kita sering perlu mengumpulkan nilai masukan dari pengguna untuk melakukan beberapa tugas. Salah satu tugas tersebut adalah mengumpulkan tanggapan ya atau tidak dari pengguna. Dengan menggunakan metode VBA MsgBox Yes No, kita dapat menulis kode untuk melangkah lebih jauh di dalam kode.

Dalam situasi tertentu, kami mungkin perlu menampilkan opsi “Ya” atau “Tidak” di depan pengguna untuk memberikan tanggapan berdasarkan pilihan tersebut. Kemudian, kita dapat menjalankan VBA codeRun Kode VBA CodeVBA mengacu pada serangkaian instruksi yang ditulis oleh pengguna dalam bahasa pemrograman Visual Basic Applications pada Visual Basic Editor (VBE) untuk melakukan tugas tertentu.Baca lebih lanjut.

Sebagai contoh, lihat gambar di bawah dari MsgBox di VBAMsgBox Pada VBAVBA Fungsi MsgBox adalah fungsi keluaran yang menampilkan pesan umum yang disediakan oleh pengembang. Pernyataan ini tidak memiliki argumen dan pesan yang dipersonalisasi dalam fungsi ini ditulis di bawah tanda kutip ganda sedangkan untuk nilai referensi variabel disediakan.baca lebih lanjut.

Jika pengguna mengatakan Ya, “kami dapat menulis kode untuk melakukan tugas tertentu”, dan jika pengguna mengatakan “Tidak”, kami dapat menulis kode untuk melakukan serangkaian tugas lainnya.

Bagaimana Bekerja dengan MsgBox Yes/No Response?

Contoh #1 – Salin dan Tempel berdasarkan Respons

Lihatlah kode di bawah ini.

Kode:

Sub MessageBox_Yes_NO_Example1() Dim AnswerYes As String Dim AnswerNo As String AnswerYes = MsgBox(“Apakah Anda Ingin Menyalin?”, vbQuestion + vbYesNo, “User Repsonse”) If AnswerYes = vbYes Then Range(“A1:A2”).Copy Range (“C1”) Else Range(“A1:A2”).Copy Range(“E1”) End If End Sub

Penjelasan:

Di atas telah mendeklarasikan variabel sebagai String yaitu

Dim AnswerYa Sebagai String

Di baris berikutnya, kami telah menetapkan nilai melalui kotak pesan yang menanyakan, ‘Apakah Anda ingin menyalin?’.

AnswerYes = MsgBox(“Apakah Anda Ingin Menyalin?”, vbQuestion + vbYesNo, “Repsonse Pengguna”)

Sekarang, pernyataan IF mengevaluasi respon yang diberikan melalui kotak pesan. Misalnya, jika hasil kotak pesan adalah vbYes , itu akan menyalin rentang A1 ke A2 dan menempelkannya ke sel C1.

Jika AnswerYes = vbYes Then Range(“A1:A2”).Copy Range(“C1”)

Jika respons yang diberikan oleh kotak pesan adalah Tidak, rentang A1 hingga A2 akan disalin dan ditempelkan ke sel E1.

Else Range(“A1:A2”).Copy Range(“E1”) End If

Kami telah memasukkan beberapa nilai di sel A1 dan A2 sekarang.

Sekarang, kita akan menjalankan kode menggunakan tombol F5, atau melalui opsi jalankan, sebuah kotak pesan akan muncul di depan kita dan meminta tanggapan kita.

Jika kita mengklik “Ya”, itu akan menyalin rentang A1 ke A2 dan menempelkannya ke sel C1. Sekarang, kita akan klik “Yes” dan lihat hasilnya.

Jadi, itu telah melakukan tugas yang diberikan jika jawabannya adalah YA.

Sekarang lagi, kita akan menjalankan kodenya.

Kali ini kita akan memilih No dan lihat apa yang terjadi.

Ya, itu melakukan tugas yang diberikan dalam kode yaitu

Else Range(“A1:A2”).Copy Range(“E1”)

Contoh #2 – Sembunyikan & Perlihatkan Lembar Berdasarkan Respons

Kode di bawah ini akan menyembunyikan semua sheet kecuali sheet yang aktif jika jawabannya ya.

Kode:

Sub HideAll() Dim Answer As String Dim Ws As Worksheet Answer = MsgBox(“Apakah Anda Ingin Menyembunyikan Semua?”, vbQuestion + vbYesNo, “Hide”) If Answer = vbYes Then For Every Ws In ActiveWorkbook.Worksheets If Ws.Name <> ActiveSheet.Name Kemudian Ws.Visible = xlSheetVeryHidden Next Ws ElseIf Answer = vbNo Kemudian MsgBox “Anda telah memilih untuk tidak menyembunyikan sheet”, vbInformation, “No Hide” End If End Sub

Kode di atas akan menyembunyikan semua lembar kerja kecuali lembar tempat kita berada sekarang jika respons dari kotak pesan adalah YA.

Jika respon dari kotak pesan adalah TIDAK, maka akan muncul kotak pesan yang mengatakan, ‘Anda telah memilih untuk tidak menyembunyikan lembaran.’

Demikian pula, kode di bawah ini akan memperlihatkan lembar jika jawabannya Ya.

Kode:

Sub UnHideAll() Dim Answer As String Dim Ws As Worksheet Answer = MsgBox(“Apakah Anda Ingin Menampilkan Semua?”, vbQuestion + vbYesNo, “Hide”) If Answer = vbYes Then For Each Ws In ActiveWorkbook.Worksheets Ws.Visible = xlSheetVeryHidden Next Ws ElseIf Answer = vbNo Kemudian MsgBox “Anda telah memilih untuk tidak menampilkan sheet”, vbInformation, “No Hide” End If End Sub

Cara kerjanya sama dengan kode lembar sembunyikan. Jika ya, itu akan muncul. Jika tidak, itu tidak akan muncul.

Artikel yang Direkomendasikan

Artikel ini telah menjadi panduan untuk Kotak Pesan VBA. Di sini, kita membahas membuat respons Ya atau Tidak di Excel VBA menggunakan MsgBox, contoh praktis, dan templat Excel yang dapat diunduh. Di bawah ini Anda dapat menemukan beberapa artikel Excel VBA yang berguna: –

  • VBA Temukan Berikutnya
  • ISERROR VBA
  • Objek Pengumpulan VBA
  • Fungsi Teks VBA
  • VBA Simpan Sebagai

Related Posts