VBA dubultā | Kā deklarēt dubultdatu tipu VBA?

Excel VBA dubultdatu tips

VBA Double ir sava veida datu tips, ko mēs piešķiram mainīgo mainīgajiem, kas ir uzlabota vai garāka “Single” datu tipa mainīgā versija un ko parasti izmanto, lai uzglabātu garākas zīmes aiz komata.

Datu tips VBA Integer vienmēr pārvērš decimālvērtības līdz tuvākajai veselā skaitļa vērtībai, viens datu tips var parādīt līdz diviem cipariem aiz komata. No otras puses, “Double” datu tips var saglabāt vērtības no -1,79769313486231E308 līdz -4,94065645841247E324 negatīvām vērtībām un pozitīviem skaitļiem - no 4,94065645841247E-324 līdz 1,79769313486232E308 .

Vēl svarīgāk ir tas, ka tas patērē 8 baitus atmiņas.

VBA Double Data Type izmantošanas piemēri

Šo VBA Double Excel veidni varat lejupielādēt šeit - VBA Double Excel veidne

1. piemērs

Pirms mēs redzam “Double” datu veida piemēru, aplūkosim VBA “Integer” un “Single” datu tipu kodus. Apskatiet zemāk redzamo VBA kodu.

Kods:

 Sub Integer_Ex () Dim k As Integer k = 2,569999947164 MsgBox k End Sub 

Es esmu paziņojis, ka mainīgais “k” ir Integer, un šim mainīgajam esmu piešķīris vērtību 2.569999947164.

Ļaujiet mums palaist šo kodu manuāli vai izmantojot Excel īsinājumtaustiņu F5, lai redzētu galīgo vērtību ziņojuma lodziņā VBA.

Rezultāts tiek parādīts kā 3, nevis norādītais numurs 2.569999947164. Iemesls VBA ir konvertējis skaitli uz tuvāko veselu skaitli, ti, 3.

Kad decimālvērtība ir lielāka par 0,5, tā tiks pārveidota par nākamo vesela skaitļa vērtību un, kad decimāldaļa ir mazāka par 0,51, tad tā tiks pārveidota par zemāku par veselu skaitli.

Tagad mainīšu datu veidu no Integer uz Single.

Kods:

 Sub Integer_Ex () Dim k kā viens k = 2,569999947164 MsgBox k End Sub 

Palaidiet kodu, izmantojot īsinājumtaustiņu F5, un noskaidrojiet, kādu numuru mēs šoreiz iegūstam.

Šoreiz rezultāts bija 2,57, tātad šoreiz divas zīmes aiz komata. Sākotnējā vērtība, kuru esam piešķīruši, bija 2,569999947164, tāpēc šajā gadījumā, treškārt, izvietotā decimālvērtība ir 9, tāpēc, tā kā tā ir lielāka par 5, tā ir pārveidojusi otrās vietas decimālvērtību 6 uz 7.

Tagad mainiet datu veidu no Single uz Double.

Kods:

 Sub Integer_Ex () Dim k As Double k = 2,569999947164 MsgBox k Beigas Sub 

Tagad palaidiet kodu manuāli un uzziniet, cik ciparu mēs saņemam ziņojumu lodziņa rezultātā.

Šoreiz ieguva visas decimālās vērtības. Sadaļā Double data type mēs varam piegādāt līdz 14 cipariem aiz komata.

Ja norādīsit vērtību, kas lielāka par 14 cipariem aiz komata, tiks konvertēta uz tuvāko vērtību. Piemēru skatiet zemāk esošajā attēlā.

Esmu ierakstījis 15 zīmes aiz komata, nevis 14, ja nospiedīšu enter taustiņu, tas atgriezīsies tikai līdz 14 cipariem.

59 (pēdējo divu ciparu) vietā mēs saņēmām 6, ti, tā kā pēdējais cipars ir 9, kas ir lielāks par 5, iepriekšējais skaitlis 5 tiek pārvērsts par nākamo veselu skaitli, ti, 6

2. piemērs

Tagad es darblapā parādīšu, kā strādāt ar šūnu atsauci. Zemāk ir numuri, kurus esmu ievadījis darblapā.

Uzsāksim to pašu vērtību tveršanu nākamajām, izmantojot INTEGER datu tipu, SINGLE datu tipu un DOUBLE tipu.

Zemāk ir kods, lai saglabātu vērtības no A līdz B kolonnām, izmantojot INTEGER datu tipu.

Kods:

 Sub Double_Ex () Dim k kā veselais skaitlis Dim CellValue kā veselais skaitlis k = 1 līdz 6 CellValue = šūnas (k, 1). Vērtības šūnas (k, 2). Vērtība = CellValue Nākamais k Beigas Sub 

Palaidīsim kodu caur īsinājumtaustiņu F5, lai redzētu, kādas vērtības mēs iegūstam B slejā.

Kad kā datu tipu izmantojām Integer, mēs saņēmām visus skaitļus, ti, bez decimāldaļām.

Tagad es vienkārši mainīšu mainīgā lieluma vba datu veidu no vesela uz Single.

Kods:

 Apakšējais Double_Ex () Dim k kā vesels skaitlis Dim CellValue kā viens K = 1 līdz 6 CellValue = šūnas (k, 1). Vērtības šūnas (k, 2). Vērtība = CellValue Nākamais k Beigas Sub 

Šis kods sniegs šādu rezultātu.

Šoreiz mēs saņēmām tikai divas zīmes aiz komata.

Tagad datu tips tiek mainīts no viena uz divkāršu.

Kods:

 Sub Double_Ex () Dim k kā Integer Dim CellValue kā Double for k = 1 līdz 6 CellValue = Šūnas (k, 1). Vērtības šūnas (k, 2). Vērtība = CellValue Nākamais k Beigas Sub 

Tas atgriezīs zemāk redzamo rezultātu.

Precīzas vērtības esam ieguvuši no A slejas.

Atceramās lietas

  • Double ir uzlabots viena veida datu veids.
  • Tajā var ievietot līdz 14 zīmēm aiz komata.
  • Tas patērē 8 baitus sistēmas atmiņas.

$config[zx-auto] not found$config[zx-overlay] not found