Fungsi Tunggu VBA

Fungsi Tunggu VBA

Fungsi Tunggu Excel VBA

VBA Wait adalah fungsi bawaan untuk menjeda kode dari eksekusi untuk waktu yang ditentukan. Ini sangat mirip dengan apa yang kita lakukan pada perintah Tidur. Untuk menjeda kode, kami menggunakan metode Application.Wait.

Beberapa kode memerlukan beberapa waktu sebelum melanjutkan ke baris kode berikutnya karena menyelesaikan tugas lain. Dalam kasus ini, kita perlu menghentikan eksekusi kode, berhenti sejenak, lalu melanjutkan eksekusi. Kita dapat menjeda kode untuk dieksekusi dengan dua cara: metode tidur dan metode Tunggu. Artikel kami sebelumnya membahas ‘VBA SleepVBA SleepVBA Sleep adalah fungsi windows, hadir di bawah File DLL Windows, yang menjeda eksekusi program untuk periode waktu tertentu (bahkan dalam milidetik). baca lebih lanjut’ metode untuk menjeda kode VBAJeda The VBA CodeVBA Jeda membantu menjeda kode agar tidak dieksekusi untuk jangka waktu tertentu. Anda dapat menjeda kode VBA untuk jangka waktu tertentu dengan menggunakan dua fungsi, dan fungsi tersebut adalah ‘Tunggu’ & ‘Tidur.’baca selengkapnya.

“Tunggu,” seperti namanya, akan menyimpan kode makro untuk dieksekusi ke kerangka waktu yang ditentukan. Dengan menggunakan metode ini, kita perlu menentukan kapan kode kita harus dijeda. Kita akan melihat contoh selanjutnya.

Sintaks fungsi WAIT adalah sebagai berikut.

Kita perlu menyebutkan jumlah waktu yang harus dijeda oleh kode kita. Seperti yang Anda lihat pada akhirnya, tertulis Boolean. Ini berarti mengembalikan hasil sebagai nilai Boolean: BENAR atau SALAH.

Sampai waktu yang ditentukan tiba, tertulis SALAH. Saat waktu yang ditentukan tiba, itu mengembalikan BENAR.

Ini tidak seperti fungsi SLEEP karena WAIT adalah fungsi bawaan, di mana SLEEP adalah Fungsi Windows. Jadi, sebelum kita mengakses fungsi SLEEP, kita perlu menyebutkan kode di bawah ini di bagian atas modul. Tapi WAIT tidak membutuhkan ini.

Kode:

#Jika VBA7 Kemudian Publik Deklarasikan PtrSafe Sub Sleep Lib “kernel32” (ByVal dwMilliseconds As LongPtr) ‘Untuk Sistem 64 Bit #Else Public Deklarasikan Sub Sleep Lib “kernel32” (ByVal dwMilliseconds As Long) ‘Untuk Sistem 32 Bit Berakhir Jika

Contoh penggunaan Excel VBA Wait Function

Contoh 1

Asumsikan Anda bekerja di excel tengah hari pada pukul 14:30:00. Anda ingin kode Anda dijeda hingga waktunya menjadi 14:40:00. Anda dapat menggunakan kode di bawah ini.

Kode:

Sub Wait_Example1() Application.Wait “14:40:00” End Sub

Kode akan menghentikan Excel Anda bekerja hingga waktunya mencapai 14:40:00 di sistem operasi Anda. Menyediakan waktu seperti ini berbahaya karena kami tidak selalu bekerja dari pukul 14:30:00. Itu terus bervariasi sepanjang waktu.

Katakanlah setiap kali Anda menjalankan kode. Anda ingin menunggu selama 2 menit. Bagaimana Anda merujuk ini dalam kode Anda?

Jadi, kita bisa menggunakan VBA NOWVBA NOWNOW adalah fungsi tanggal dan waktu di VBA yang digunakan untuk mendapatkan tanggal dan waktu sistem saat ini. Fungsi VBA Now tidak memerlukan argumen apa pun dan output pengembalian untuk fungsi ini adalah fungsi date.read more dengan fungsi TIME VALUE untuk memasukkan waktu yang ditentukan dari waktu saat ini.

Fungsi SEKARANG () mengembalikan tanggal dan waktu saat ini per sistem komputer Anda. Fungsi TIMEVALUE mewakili waktu dari 00:00:00 hingga 23:59:59 yaitu 23:59:59 dalam format 24 jam. Ini mengubah nilai string menjadi nilai waktu.

Misalnya SEKARANG () + TIMEVALUE (00:02:30) berarti Waktu Saat Ini + 2 menit 30 detik.

Jika waktu saat ini adalah 14:25:30, maka menjadi 14:28:00.

Anda dapat menggunakan kode di bawah ini untuk menghentikan eksekusi kode Anda dari waktu saat ini hingga 10 menit berikutnya.

Kode:

Sub Wait_Example2() Application.Wait (Sekarang() + TimeValue(“00:10:00”)) End Sub

Penting untuk menggunakan fungsi SEKARANG () untuk jeda yang akurat. Jika tidak, ada kemungkinan buku kerja excel Anda akan dijeda hingga tengah malam. Namun, kita dapat keluar dari metode pause kapan saja dengan menekan tombol Esc atau Break Key .

Contoh #2

Tunggu 10 Detik Setiap kali Loop Berjalan

Seseorang dapat menggunakan metode Tunggu dengan loop. Namun, ada situasi di mana Anda mungkin perlu menunggu selama 10 detik setiap kali loop berjalan. Sebagai contoh, lihat data di bawah ini.

Untuk menghitung Untung = (Penjualan – Biaya), Anda ingin membuat satu putaran, dan setelah setiap putaran, Anda ingin menunggu selama 10 detik untuk memeriksa apakah hasilnya akurat atau tidak. Kode di bawah ini akan melakukannya.

Kode:

Sub Wait_Example3() Dim k Sebagai Integer Untuk k = 2 Sampai 9 Cells(k, 4).Value = Cells(k, 2) – Cells(k, 3) Application.Wait (Now() + TimeValue(“00:00 :10”)) Lanjut k Akhir Sub

Kode ini akan menghitung kolom keuntungan baris demi baris. Setelah menyelesaikan baris pertama, akan menunggu 10 detik sebelum menghitung baris berikutnya.

VBA Tidur vs. VBA Tunggu

TIDUR VBA

TUNGGU VBA

Ini bukan fungsi bawaan VBA. Perlu kode khusus untuk mengakses fungsi ini.

Ini adalah fungsi bawaan VBA dan tidak memerlukan kode khusus untuk mengakses fungsi ini.

Tidur membutuhkan milidetik sebagai kerangka waktu.

Menunggu membutuhkan kerangka waktu yang teratur.

Kami dapat menunda kode dalam milidetik.

Kami hanya dapat menunda dalam hitungan detik penuh.

Artikel yang Direkomendasikan

Artikel ini telah menjadi panduan untuk Fungsi Tunggu VBA. Di sini, kami membahas cara menggunakan metode Tunggu untuk menjeda kode agar tidak berjalan dengan bantuan contoh praktis dan lembar Excel yang dapat diunduh. Anda dapat mempelajari lebih lanjut tentang VBA dari artikel berikut: –

  • Persimpangan VBA
  • Fungsi Terpisah di VBA
  • Operator di VBA

Related Posts