Fungsi Tidur VBA

Fungsi Tidur VBA

Fungsi Tidur Excel VBA

Tidur VBA adalah fungsi Windows yang ada di bawah file Windows DLL yang digunakan untuk menghentikan atau menjeda prosedur makro agar tidak berjalan selama waktu tertentu. Setelah jumlah tertentu itu, kami dapat melanjutkan program.

Ada situasi di mana kita perlu menjeda proses menjalankan makro untuk menyelesaikan rangkaian tugas lainnya. Serangkaian tugas lainnya dapat menjadi bagian dari pengkodean kami atau prosedur Makro lainnya, atau dapat menjadi input untuk makro excel saat ini. Makro Excel Makro di excel adalah serangkaian instruksi dalam bentuk kode yang membantu mengotomatiskan tugas manual, sehingga menghemat waktu. Excel mengeksekusi instruksi tersebut secara langkah demi langkah pada data yang diberikan. Misalnya, dapat digunakan untuk mengotomatiskan tugas berulang seperti penjumlahan, pemformatan sel, penyalinan informasi, dll. sehingga dengan cepat menggantikan operasi berulang dengan beberapa klik. Baca selengkapnya. Bagaimana Anda bisa menjeda program saat sedang berjalan? Kami dapat menjeda kode prosedur untuk beberapa waktu yang ditentukan oleh pengguna. Setelah jumlah tertentu itu, kami dapat melanjutkan program. Kita bisa melakukan ini di VBA dengan menggunakan fungsi SLEEP.

Anda bebas menggunakan gambar ini di situs web Anda, templat, dll., Harap berikan kami tautan atribusiBagaimana Memberikan Atribusi? Tautan Artikel menjadi Hyperlink
Misalnya: Sumber: Fungsi Tidur VBA (wallstreetmojo.com)

Apa Fungsi Tidur VBA?

TIDUR, seperti namanya sendiri, mengatakan, “tidur sebentar”, “istirahat sebentar”, “jeda sebentar”, istirahat sebentar”, dll. Jadi, misalnya, fungsi Tidur memungkinkan pengguna untuk jeda kode makro kami selama milidetik. Dengan menggunakan ini, kita dapat menunda proses kode Makro.

Jika menurut Anda kami memiliki fungsi bawaan yang disebut SLEEP, maka Anda salah karena di VBA tidak ada fungsi seperti itu. Sebaliknya, kami memiliki fungsi yang disebut Tidur sebagai fungsi jendela. Dengan memasukkan sekumpulan kode khusus, kita dapat memanggil fungsi ini di VBA. Ini adalah fungsi di dalam file DLL Windows, jadi kita harus mendeklarasikan nomenklatur API sebelum subrutin dimulai di VBASubroutine Di VBASUB di VBA adalah prosedur yang berisi semua kode yang secara otomatis memberikan pernyataan subrutin dan bagian tengah digunakan untuk pengkodean. Sub pernyataan dapat bersifat publik dan pribadi dan nama subprosedur wajib ada di VBA.baca lebih lanjut.

Di bawah ini adalah kode VBA Kode VBA Kode VBA 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.

Kode:

#Jika VBA7 Lalu Publik Deklarasikan PtrSafe Sub Sleep Lib “kernel32” (ByVal dwMilliseconds As LongPtr) ‘Untuk Excel versi 64-Bit #Else Public Deklarasikan Sub Sleep Lib “kernel32” (ByVal dwMilliseconds As Long) ‘Untuk versi 32-Bit Excel #End If

Harap salin di atas dan tempelkan ke modul Anda sebelum Anda mulai menulis kode makro. Kita harus menempelkannya seperti ini di modul.

Contoh

Sebelum kami menunjukkan cara menulis kode, izinkan kami menjelaskan fungsi Tidur sedikit lebih banyak. Ini menunda proses dalam milidetik. Jadi, 1 detik sama dengan 1.000 milidetik. Jadi, kalau mau jeda 10 detik, harus 10.000 milidetik.

Contoh 1

Setelah kami menempelkan kode API sebelum memulai sub prosedur, buat nama Makro.

Kode:

#Sub Sleep_Example1() Akhiri Sub

Deklarasikan dua variabel sebagai string.

Kode:

Redupkan Waktu Mulai Sebagai String Redupkan Waktu Akhir Sebagai String

Untuk variabel StartTime , tetapkan nilai fungsi TIME. Catatan: WAKTU di excelTIME Di ExcelTime adalah fungsi lembar kerja waktu di Excel yang digunakan untuk menghitung waktu berdasarkan input yang diberikan oleh pengguna. Argumen dapat mengambil format berikut: jam, menit, dan detik. Fungsi read more mengembalikan waktu saat ini.

Kode:

Waktu Mulai = Waktu

Sekarang, kami akan menampilkan pesan ini di kotak pesan Kotak VBAMessage Fungsi VBAVBA 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.

Kode:

Waktu Mulai = Waktu MsgBox Waktu Mulai

Kami akan menjeda kode selama 10 detik menggunakan fungsi Tidur. Seperti yang kami katakan, ini menjeda kode dalam milidetik untuk menjeda selama 10 detik. Jadi, kita perlu menggunakan 10.000 milidetik.

Kode:

Sub Sleep_Example1() Dim StartTime As String Dim EndTime As String StartTime = Time MsgBox StartTime Sleep (10000) End Sub

Sekarang, gunakan variabel kedua, EndTime, dan tetapkan waktu saat ini.

Kode:

Sub Sleep_Example1() Dim StartTime As String Dim EndTime As String StartTime = Waktu MsgBox StartTime Sleep (10000) EndTime = Waktu MsgBox EndTime End Sub

Sekarang, dua variabel: StartTime dan EndTime . Ini akan menahan waktu awal dan akhir makro. Jalankan Makro ini. Pertama-tama, kita akan melihat waktu mulai Makro: waktu saat ini di sistem Anda.

Klik “OK.” Ini akan tidur selama 10 detik. Selanjutnya, Anda dapat melihat simbol buffer.

Setelah 10 detik, itu akan melanjutkan kode untuk menunjukkan waktu akhir. Setelah menunggu 10 detik, jam berapa sekarang?

Makro dimulai pada 10:54:14 dan berakhir pada 10:54:24, yaitu perbedaan 10 detik. Dalam 10 detik itu, VBA dijedaVBA JedaVBA 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 lebih lanjut kode berjalan.

Contoh #2 – Fungsi Sleep dalam Loops

Tidur paling baik digunakan dengan loop di VBA. Sebagai contoh, kita ingin menyisipkan serial number dari 1 sampai 10 menggunakan Do while loop pada VBALoop Pada VBAA VBA loop pada excel adalah instruksi untuk menjalankan kode atau mengulang suatu aksi berkali-kali.baca lebih lanjut.

Setelah memasukkan satu angka, kode saya harus menunggu selama 3 detik, jadi ketika loop berjalan 10 kali, seharusnya 30 detik.

Kode:

Sub Sleep_Example2() Dim k As Integer k = 1 Do While k <= 10 Cells(k, 1).Value = kk = k + 1 Sleep (3000) ‘1000 milidetik adalah 1 detik jadi 3000 sama dengan 3 detik Loop End Sub

Jalankan kode ini, dan Anda harus menunggu minimal 30 detik untuk menyelesaikan prosesnya.

Untuk melacak waktu yang tepat, gunakan kode di bawah ini.

Kode:

Sub Sleep_Example2() Dim k As Integer Dim StartTime As String Dim EndTime As String StartTime = Time MsgBox “Kode Anda Dimulai pada ” & StartTime k = 1 Do While k <= 10 Cells(k, 1).Value = kk = k + 1 Sleep (3000) ‘1000 milliseonds adalah 1 detik jadi 3000 sama dengan 3 detik Loop EndTime = Time MsgBox “Kode Anda Diakhiri pada” & Sub Akhir Waktu Akhir

Kode ini akan menampilkan dua kotak pesan. Yang pertama akan menunjukkan waktu mulai. Selain itu, yang kedua akan menunjukkan waktu akhir.

Catatan: Saat menjalankan kode ini, Anda tidak dapat menggunakan Excel. Bahkan tombol escape tidak akan berfungsi.

Artikel yang Direkomendasikan

Artikel ini adalah panduan untuk Fungsi Tidur VBA. Di sini, kami membahas cara menggunakan Sleep in Excel VBA, contoh praktis, dan template Excel yang dapat diunduh. Di bawah ini adalah beberapa artikel Excel berguna yang terkait dengan VBA: –

  • Fungsi CSTR di Excel VBA
  • Buku Kerja VBA
  • Apa itu Tipe Data Panjang di VBA?
  • Titik Istirahat VBA Excel

Related Posts