Dvigubo kintamojo tipas
VBA Dvigubas duomenų tipas naudojamas skaičiams, kuriems reikia dešimtainių skaičių, saugoti. Jis gali saugoti nuo –1,79769313486231E308 iki –4,94065645841247E -324, jei yra neigiamos vertės, ir nuo 4,94065645841247E -324 iki 1,79769313486232E308, jei yra teigiamų verčių.
Jei norite deklaruoti dvigubą kintamąjį, naudokite „Dim Statement“ (trumpinys „Dimension“):
1 | Dim dblA kaip dvigubas |
Tada, norėdami priskirti kintamojo vertę, tiesiog naudokite lygybės ženklą:
1 | dlbA = 3658,25 |
Įtraukimas į procedūrą atrodo taip:
12345678 | DblExample ()“paskelbti dvigubą kintamąjįDim dblA kaip dvigubas“užpildykite dvigubą kintamąjįdblA = 3658,25“parodyti pranešimų laukelį„MsgBox dblA“Pabaiga Sub |
Jei paleisite aukščiau esantį kodą, bus parodytas šis pranešimų langas.
Vienas duomenų tipas
Vieno tipo duomenys yra tik trumpesnė dvigubo tipo duomenų versija. Dėl šios priežasties jis gali suapvalinti, kai naudojamas procedūroje, nes vienintelis duomenų tipas apvalins iki 4 skaičių po kablelio, o dvigubas duomenų tipas - iki 12 skaičių po kablelio. Jei jums nereikia dvigubo duomenų tipo, galite naudoti vieno tipo duomenų tipą
Vidiniai arba ilgi duomenų tipai
Jei jums nereikia dešimtainio skaičiaus, galite naudoti duomenų tipą „Int“ arba „Long“.
1 | Dim intA kaip sveikasis skaičius |
1 | Dim lngB kaip ilgas |
Dvigubo kintamojo paskelbimas modulyje arba pasauliniu lygiu
Ankstesniuose pavyzdžiuose procedūros metu paskelbėme dvigubą kintamąjį. Kintamieji, deklaruojami naudojant procedūrą, gali būti naudojami tik tos procedūros metu.
Vietoj to, galite deklaruoti dvigubus kintamuosius modulio ar visuotiniu lygiu.
Modulio lygis
Modulio lygis kintamieji deklaruojami kodo modulių viršuje su Mat pareiškimas.
Šiuos kintamuosius galima naudoti atliekant bet kokias to kodo modulio procedūras.
Pasaulinis lygis
Pasaulinis lygis kintamieji taip pat deklaruojami kodo modulių viršuje. Tačiau, užuot naudoję Mat teiginį, naudokite Viešas teiginys, nurodantis, kad dvigubą kintamąjį galima naudoti visame jūsų VBA projekte.
1 | Viešoji DblA kaip dviguba |
Jei deklaruotumėte dvigubą kintamąjį modulio lygiu ir bandytumėte jį naudoti kitame modulyje, įvyktų klaida.
Tačiau jei dvigubą kintamąjį deklaruotumėte naudodami viešąjį raktinį žodį, klaida neįvyktų ir procedūra vyktų puikiai.
Formatas dvigubai saugomas kaip eilutė
Gali būti laikas, kai norite suformatuoti dvigubą duomenų tipą į eilutę - pavyzdžiui, galite parodyti valiutos simbolį ir suapvalinti skaičių iki 2 skaičių po kablelio.
Norėdami tai padaryti, naudokite funkciją Formatas.
Toliau nurodyta procedūra
1234567891011 | Sub TestDoubleToCurrencyString ()“paskelbti eilutės kintamąjį„Dim strMoney“ kaip eilutė“paskelbkite dvigubą ir nurodykite vertęDim dblValue Kaip dvigubasdblValue = 44055.256'konvertuokite dvigubą į eilutę su valiutos simboliu su 2 kableliais po kableliostrMoney = Formatas (dblValue, "$#, ## 0.00")'peržiūrėti rezultatą„MsgBox strMoney“Pabaiga Sub |
grąžintų tokį rezultatą:
Panašiai galbūt norėsite rodyti numerį kaip suformatuotą telefono numerį.
Ši procedūra:
1234567891011 | Antrasis testasDoubleToPhone ()“paskelbti eilutės kintamąjį„Dim strPhone“ kaip eilutė“paskelbkite dvigubą ir nurodykite vertęDim dblValue Kaip dvigubasdblValue = 555968541'konvertuokite dvigubą į eilutę su valiutos simboliustrPhone = Formatas (dblValue, "(000) -000 0000")'peržiūrėti rezultatą„MsgBox strPhone“Pabaiga Sub |
grąžintų tokį rezultatą: