VBA Long (Contoh) - Panduan Langkah demi Langkah untuk Jenis Data Panjang dalam Excel VBA

Apakah Jenis Data Panjang dalam VBA?

Long adalah jenis data dalam VBA yang digunakan untuk menyimpan nilai numerik, kita tahu bahawa bilangan bulat juga menyimpan nilai numerik tetapi Long berbeza dari bilangan bulat kerana jarak penyimpanan data sangat besar sekiranya jenis data panjang juga panjang jenis data kita boleh menyimpan nilai perpuluhan juga, ini adalah jenis data terbina dalam.

"Panjang," seperti namanya, seharusnya mempunyai nilai sesuatu yang besar. "Long" adalah jenis data berangka dalam VBA Excel.

Jenis data panjang dalam Excel VBA dapat menahan nilai dari 0 hingga 2, 147, 483, 647 untuk nombor positif, dan untuk nombor negatif dapat ditahan dari 0 hingga -2, 147, 483, 648.

Jenis data VBA Long memerlukan 4 byte penyimpanan memori komputer anda. Ini adalah memori pemboleh ubah jenis data integer berganda (2 bait) dan separuh daripada memori pemboleh ubah jenis data ganda (8 bait)

Saya tidak pernah melihat senario di mana saya mahu menggunakan sepenuhnya had jenis data VBA Long dalam karier pendek saya. Tetapi saya akan menunjukkan beberapa contoh untuk memahaminya dengan lebih baik.

Contoh Jenis Data Panjang VBA

Berikut adalah contoh jenis data VBA Long excel.

Contoh Panjang VBA # 1

Sebaik sahaja anda mengisytiharkan jenis data pemboleh ubah sebagai "Panjang", anda dapat menetapkan nilai dari -2, 147, 483, 648 hingga 2, 147, 483, 648.

Contohnya, nyatakan pemboleh ubah sebagai jenis data panjang.

Kod:

Sub Long_Contoh1 () Dim k Sebagai Sub Long End

Mari berikan nilai sebagai jumlah baris lembaran kerja.

Untuk mendapatkan jumlah baris dalam kod lembaran kerja excel adalah "Baris. Kira ”

Kod:

Sub Long_Contoh1 () Dim k As Long k = Rows.Count End Sub

Sekarang tunjukkan nilai di kotak mesej.

Kod:

Sub Long_Contoh1 () Dim k As Long k = Rows.Count MsgBox k End Sub

Jalankan kod ini dan lihat berapa jumlah baris dalam lembaran kerja.

Dikatakan kami mempunyai lebih dari 1 juta baris dalam lembaran kerja.

Sekarang untuk pemahaman yang lebih baik, saya akan menukar jenis data dari LONG menjadi INTEGER.

Kod:

Sub Long_Contoh1 () Dim k Sebagai Integer k = Rows.Count MsgBox k End Sub

Sekiranya saya menjalankan kod VBA, saya akan menerima mesej ralat sebagai "Overflow."

Sebab mengapa kami mendapat ralat ini di VBA kerana jenis data "Integer" dapat menahan nilai dari -31768 hingga 32767 saja. Dalam kes ini, "Baris. Count ”akan mengembalikan nombor yang melebihi had pemboleh ubah“ integer ”.

Menetapkan nilai lebih dari 1 juta kepada pemboleh ubah yang hanya dapat menahan 32767 menyebabkan ralat limpahan di sini.

Contoh Panjang VBA # 2

Cari Baris Terakhir Menggunakan Pembolehubah Panjang

Mencari baris lembaran kerja yang terakhir digunakan adalah pengekodan yang paling penting. Untuk mencari baris terakhir lembaran kerja yang digunakan memerlukan pemboleh ubah dinyatakan. Semasa menyatakan pemboleh ubah dan menetapkan jenis data memerlukan beberapa akal.

Andaikan data anda berakhir pada 25000 baris, seperti yang ditunjukkan dalam gambar di bawah.

Sekarang saya tahu nombor baris terakhir digunakan adalah 25000. Untuk ini, kita tidak memerlukan jenis data "PANJANG" kerana jenis data "INTEGER" dapat memberi saya baris terakhir.

Lihat kod di bawah untuk maklumat anda.

Kod:

Sub Long_Contoh1 () Dim k Sebagai Integer k = Sel (Rows.Count, 1). End (xlUp). Baris MsgBox k End Sub

Sekiranya saya menjalankan kod ini, saya akan mendapat nombor baris terakhir lembaran kerja yang sedang saya kerjakan pada masa ini.

Sebagai pengekod, penting untuk mengetahui ukuran data yang akan anda miliki pada masa akan datang. Kerana pada masa ini, data mungkin berakhir pada baris ke- 25000 , tetapi jika data meningkat melebihi had "Integer", yaitu, 32767, itu menyebabkan kesalahan limpahan.

Sebagai contoh, saya akan menambah data ke baris ke- 32768 .

Sekarang, jika saya menjalankan kod yang sama sekali lagi, saya tidak akan mendapat nilainya. Sebaliknya, saya akan mendapat ralat seperti di bawah.

Ingat, saya telah meningkatkan had hanya 1 melebihi had nilai "Integer", jadi saya mendapat ralat Overflow.

Oleh itu, penting untuk mengetahui ukuran data anda sebelum anda menetapkan jenis data kepada pemboleh ubah. Selalu merupakan pilihan yang lebih baik untuk menyatakan pemboleh ubah sebagai "PANJANG" tanpa memikirkan ukuran data anda di masa depan.

Alternatif untuk Excel VBA Long Variable

Anda mesti sudah memikirkan bagaimana jika kita mahu mengekalkan nilai lebih daripada had pemboleh ubah panjang. Untuk ini, kita perlu menggunakan jenis data yang berbeza, iaitu "String" VBA atau "Varian".

Ingat, ketika ia melintasi nombor 2147483647, kita akan mendapat ralat limpahan dalam VBA dengan jenis data yang PANJANG. Untuk menyimpan lebih daripada nombor ini, kita perlu menggunakan jenis data "String" atau "Varian".

Untuk Rentetan

Kod:

Sub Long_Contoh2 () Dim k As String k = 2147483648 MsgBox k End Sub

Untuk Varian

Kod:

Sub Panjang_Contoh2 () Dim k Sebagai Varian k = 2147483648 MsgBox k Akhir Sub

Apabila kita menjalankan kod di atas, ia akan menunjukkan nombor yang disebutkan.

Artikel menarik...