Tipe Data Ganda VBA Excel
VBA Double adalah jenis tipe data yang kami tetapkan untuk mendeklarasikan variabel, yang merupakan versi yang lebih baik atau lebih lama dari variabel tipe data "Tunggal" dan biasanya digunakan untuk menyimpan tempat desimal yang lebih panjang.
Tipe data VBA Integer selalu mengonversi nilai desimal ke nilai integer terdekat. Tipe data tunggal dapat menampilkan hingga dua digit tempat desimal. Di sisi lain, tipe data "Ganda" dapat menyimpan nilai dari -1.79769313486231E308 hingga -4.94065645841247E324 untuk nilai negatif dan untuk bilangan positif dapat menyimpan nilai dari 4.94065645841247E-324 hingga 1.79769313486232E308 .
Lebih penting lagi, ini mengkonsumsi 8 byte memori.

Contoh untuk menggunakan Tipe Data Ganda VBA
Contoh 1
Sebelum kita melihat contoh tipe data “Double”, mari kita lihat contoh kode tipe data “Integer” dan “Single” di VBA. Lihat kode VBA di bawah ini.
Kode:
Sub Integer_Ex () Dim k Sebagai Integer k = 2.569999947164 MsgBox k End Sub

Saya telah mendeklarasikan variabel "k" sebagai Integer, dan untuk variabel ini, saya telah menetapkan nilainya sebagai 2.569999947164.
Mari kita jalankan kode ini secara manual atau menggunakan tombol pintas excel F5, untuk melihat nilai akhir di kotak pesan di VBA.

Hasilnya ditampilkan sebagai 3, bukan nomor yang disediakan 2.569999947164. Alasannya karena VBA telah mengonversi bilangan tersebut ke nilai integer terdekat yaitu 3.
Ketika nilai desimal lebih dari 0,5, maka akan dikonversi ke nilai bilangan bulat berikutnya, dan ketika nilai desimal kurang dari 0,51, maka akan diubah menjadi nilai bilangan bulat di bawah.
Sekarang saya akan mengubah tipe data dari Integer menjadi Single.
Kode:
Sub Integer_Ex () Dim k Sebagai Tunggal k = 2.569999947164 MsgBox k End Sub

Jalankan kode melalui tombol pintas F5, dan lihat nomor apa yang kita dapatkan kali ini.

Kali ini kami mendapatkan hasil sebagai 2,57, jadi kali ini kami mendapat dua tempat desimal. Nilai asli yang kami tetapkan adalah 2.569999947164, jadi dalam kasus ini, ketiga, nilai desimal yang ditempatkan adalah 9, jadi karena ini lebih dari 5, ini telah mengonversi nilai desimal tempat kedua 6 menjadi 7.
Sekarang ubah tipe data dari Tunggal menjadi Ganda.
Kode:
Sub Integer_Ex () Dim k Sebagai Ganda k = 2.569999947164 MsgBox k End Sub

Sekarang jalankan kode secara manual dan lihat berapa digit yang kita dapatkan di hasil kotak pesan.

Kali ini mendapatkan semua nilai desimal. Kami dapat menyediakan hingga 14 digit tempat desimal di bawah tipe data ganda.
Misalkan Anda memasukkan nilai apa pun yang lebih besar dari 14 posisi desimal akan dikonversi ke nilai terdekat. Misalnya, lihat gambar di bawah ini.

Saya telah mengetik 15 tempat desimal, bukan 14. Jika saya menekan tombol enter, itu akan kembali ke 14 digit saja.

Alih-alih 59 (dua digit terakhir), kami mendapat 6 yaitu, karena digit terakhir adalah 9, yang lebih besar dari 5 angka sebelumnya 5 diubah menjadi nilai bilangan bulat berikutnya yaitu 6
Contoh # 2
Sekarang saya akan menunjukkan cara bekerja dengan referensi sel di lembar kerja. Di bawah ini adalah nomor yang telah saya masukkan di lembar kerja.

Mari kita mulai menangkap nilai yang sama ke depan dengan menggunakan tipe data INTEGER , tipe data TUNGGAL , dan tipe DOUBLE .
Di bawah ini adalah kode untuk mempertahankan nilai dari kolom A ke B dengan menggunakan tipe data INTEGER.
Kode:
Sub Double_Ex () Dim k As Integer Dim CellValue As Integer For k = 1 To 6 CellValue = Cells (k, 1). Value Cells (k, 2) .Value = CellValue Next k End Sub

Mari kita jalankan kode melalui tombol pintas F5 untuk melihat nilai apa yang kita dapatkan di kolom B.

Ketika kami telah menggunakan Integer sebagai tipe data, kami mendapatkan semua bilangan bulat yaitu, tanpa desimal.
Sekarang saya hanya akan mengubah tipe data VBA variabel dari integer ke Single.
Kode:
Sub Double_Ex () Dim k Sebagai Integer Dim CellValue Sebagai Tunggal Untuk k = 1 hingga 6 CellValue = Sel (k, 1). Nilai Sel (k, 2) .Value = CellValue Berikutnya k Akhir Sub

Kode ini akan memberikan hasil di bawah ini.

Kali ini kami hanya mendapat dua tempat desimal.
Sekarang mengubah tipe data dari tunggal menjadi ganda.
Kode:
Sub Double_Ex () Dim k Sebagai Integer Redup CellValue Sebagai Ganda Untuk k = 1 hingga 6 CellValue = Sel (k, 1). Nilai Sel (k, 2) .Value = CellValue Berikutnya k Akhir Sub

Ini akan mengembalikan hasil di bawah ini.

Kami mendapatkan nilai pasti dari kolom A.
Hal-hal untuk diingat
- Ganda adalah tipe data yang ditingkatkan dari tipe data tunggal.
- Dapat menampung hingga 14 tempat desimal.
- Ini mengkonsumsi 8 byte memori sistem.