Ši pamoka parodys, kaip naudoti funkciją CInt VBA, norint išraišką paversti sveiko skaičiaus duomenų tipu.
CInt funkcija
VBA CInt Konvertuoti išraišką į sveikąjį skaičių
Funkcija „VBA CInt“ gali būti naudojama išraiškoms konvertuoti į sveiko skaičiaus duomenų tipą VBA kode. Gautas skaičius suapvalinamas iki sveiko skaičiaus.
123456 | Antrasis CIntExample_1 ()„MsgBox CInt“ (12.34) „Rezultatas: 12„MsgBox CInt“ (12.345) „Rezultatas: 12„MsgBox CInt“ (-124) rezultatas: -124„MsgBox CInt“ (–12,34) „Rezultatas: -12Pabaiga Sub |
VBA CInt apvalinimas
Funkcija „VBA CInt“ suapvalins skaičių tipo ar skaičiaus išraiškos dešimtainę dalį. Tačiau ne visais atvejais jis apvalinamas teisingai. Kai dešimtainė dalis yra 0,5, funkcija VBA CInt grąžina artimiausią lyginį sveikąjį skaičių.
12345678910111213141516 | Antrasis CIntExample_2 ()„MsgBox CInt“ (0,34)'Rezultatas: 0„MsgBox CInt“ (0,99)'Rezultatas: 1„MsgBox CInt“ (-124,95)Rezultatas: -125„MsgBox CInt“ (1.5)'Rezultatas: 2„MsgBox CInt“ (2.5)'Rezultatas: 2Pabaiga Sub |
Prie numatomos dešimtainės vertės galime pridėti santykinai mažą dešimtainį skaičių, kad pakeistume „VBA Cint“ funkcijos elgseną į numatytą.
1234567891011 | CIntExample_3 ()„MsgBox CInt“ (2.5)'Rezultatas: 2„MsgBox CInt“ (2,5 + 0,001)'Rezultatas: 3„MsgBox CInt“ (14.5)„Rezultatas: 14„MsgBox CInt“ (14,5 + 0,001)'Rezultatas: 15Pabaiga Sub |
VBA programavimas | Kodo generatorius jums tinka!
VBA CInt konvertuoti eilutes į sveikus skaičius
Funkcija VBA CInt gali būti naudojama konvertuoti eilutes į sveikus skaičius, jei eilutės simboliai turi reikšmę kaip skaičiai.
123456789101112131415161718 | CIntExample_4 ()„Dim StrEx“ kaip eilutėStrEx = "112"„MsgBox CInt“ („StrEx“)Rezultatas: 112StrEx = "112,3"„MsgBox CInt“ („StrEx“)„Rezultatas: 112 -> 112,3 yra suapvalintasStrEx = "11,2"„MsgBox CInt“ („StrEx“)„Rezultatas yra: 112 ->, nepaisoma„StrEx“ = „112 USD“„MsgBox CInt“ („StrEx“)'Rezultatas: 112 -> $ nepaisomaPabaiga Sub |
VBA CInt Run-Time Error 13 Tipo neatitikimas
Naudojant „VBA Cint“ funkciją su eilutėmis, kuriose yra neskaitinių simbolių ar simbolių, neturinčių reikšmės skaitiniame kontekste, atsiras vykdymo laiko klaida „13“: tipo neatitikimas.
1234567 | CIntExample_5 ()„Žemiau pateiktas kodas parodys klaidos pranešimą„CInt negali apdoroti ne skaitinių simbolių„Dim StrEx“ kaip eilutėStrEx = "Ab13"„MsgBox CInt“ („StrEx“)Pabaiga Sub |
VBA CInt Run-Time Error 6 Overflow
Naudojant „VBA Cint“ funkciją su eilutėmis, kurių vertė yra mažesnė arba didesnė už numatytą sveikąjį skaičių, atsiras vykdymo laiko klaida „6“: perpildymas. „Excel“ sveiko skaičiaus duomenų tipo numatoma vertė yra nuo -32768 iki 32767.
1234567 | CIntExample_6 ()„Žemiau pateiktas kodas parodys klaidos pranešimą„Negaliu tvarkyti ne skaitinių simbolių„Dim StrEx“ kaip eilutėStrEx = "1234567"„MsgBox CInt“ („StrEx“)Pabaiga Sub |
Pavargote ieškoti VBA kodo pavyzdžių? Išbandykite „AutoMacro“!
VBA CInt regioniniai nustatymai
Funkcija „VBA CInt“ turi skirtingą elgseną, konvertuojančią eilutes kableliais ar taškais. Jis naudoja operacinės sistemos regioninius nustatymus dešimtainiam ir skaitmenų skyrikliui.
12345678910111213141516 | CIntExample_7 ()„Dim StrEx“ kaip eilutė„StrEx“ = „1,9“„MsgBox CInt“ („StrEx“)„Jei yra regioniniai nustatymai, tada kaip grupavimo atskyriklis„Rezultatas: 19„Jei regioniniai nustatymai turi, kaip dešimtainis skyriklis, tada„Rezultatas: 2 (2, nes 1,9 suapvalinamas)StrEx = "1,9"„MsgBox CInt“ („StrEx“)„Jei regioniniai nustatymai turi. kaip grupavimo atskyrėjas tada„Rezultatas: 19„Jei regioniniai nustatymai turi. kaip dešimtainis skyriklis tada„Rezultatas: 2 (2, nes 1,9 suapvalinamas)Pabaiga Sub |
VBA programavimas | Kodo generatorius jums tinka!
„VBA CInt“, konvertuojantis logines vertes į sveikus skaičius
„VBA Cint“ funkcija gali konvertuoti loginius kintamuosius į sveikus skaičius. Jei įvertinta išraiška yra teisinga, gautas sveikasis skaičius yra -1, o jei išraiška yra klaidinga, gautas sveikasis skaičius yra 0.
12345678910 | CIntExample_8 ()„Dim BoolEx“ kaip „Boolean“„BoolEx“ = tiesa„MsgBox CInt“ („BoolEx“) rezultatas: -1„MsgBox CInt“ (2 = 2) „Rezultatas: -1BoolEx = klaidinga„MsgBox CInt“ („BoolEx“) rezultatas: 0„MsgBox CInt“ (1 = 2) „Rezultatas: 0Pabaiga Sub |
VBA CInt Datų konvertavimas į sveikus skaičius
„VBA Cint“ funkcija gali konvertuoti datos kintamąjį į sveiką skaičių. Grąžinta vertė yra vidinis skaičius, kurį „Excel“ naudoja datos saugojimui, suapvalintas. Jei šis skaičius neviršija numatytų sveikų skaičių ribų VBA, gausime „Run-Time“ klaidą „6“: perpildymas.
123456789 | CIntExample_9 ()Dim DateEx kaip dataDateEx = #2/3/1940 #„MsgBox CInt“ („DateEx“)Rezultatas: 14644DateEx = #1964-08-07 #„MsgBox CInt“ („DateEx“)Rezultatas: 23596Pabaiga Sub |