Ovaj će vodič pokazati kako koristiti funkciju CLng VBA za pretvaranje izraza u tip podataka s dugim cijelim brojevima.
CLng funkcija
VBA CLng Pretvori izraz u dugo
VBA CLng funkcija može se koristiti za pretvaranje izraza u dugi tip podataka unutar VBA koda.
123456 | Pod CLngExample_1 ()MsgBox CLng (12.34) 'Rezultat je: 12MsgBox CLng (12.345) 'Rezultat je: 12MsgBox CLng (-124) 'Rezultat je: -124MsgBox CLng (-12,34) 'Rezultat je: -12Kraj podm |
VBA CLng Zaokruživanje
Funkcija VBA CLng zaokružit će decimalni dio vrste broja ili brojčani izraz. Međutim, ne zaokružuje se pravilno u svim slučajevima. Kad je decimalni dio 0,5 tada funkcija VBA CLng vraća najbliži paran cijeli broj.
1234567891011 | Pod CLngExample_2 ()MsgBox CLng (0,34) 'Rezultat je: 0MsgBox CLng (0,99) 'Rezultat je: 1MsgBox CLng (-124.95) 'Rezultat je: -125MsgBox CLng (1.5) 'Rezultat je: 2MsgBox CLng (2.5) 'Rezultat je: 2Kraj podm |
Možemo dodati decimalni broj relativno mali našoj očekivanoj decimalnoj vrijednosti kako bismo promijenili ponašanje funkcije VBA CLng na očekivano.
1234567891011 | Pod CLngExample_3 ()MsgBox CLng (2,5)'Rezultat je: 2MsgBox CLng (2,5 + 0,001)'Rezultat je: 3MsgBox CLng (14,5)'Rezultat je: 14MsgBox CLng (14,5 + 0,001)'Rezultat je: 15Kraj podm |
VBA programiranje | Generator koda radi za vas!
VBA CLng Pretvaranje nizova u duge
VBA CLng funkcija može se koristiti za pretvaranje nizova u long ako znakovi u nizu imaju značenje kao brojevi.
123456789101112131415161718 | Pod CLngExample_4 ()Dim StrEx kao nizStrEx = "112"MsgBox CLng (StrEx)'Rezultat je: 112StrEx = "112.3"MsgBox CLng (StrEx)'Rezultat je: 112 112.3 je zaokruženoStrEx = "11,2"MsgBox CLng (StrEx)'Rezultat je: 112, zanemaruje seStrEx = "112 USD"MsgBox CLng (StrEx)'Rezultat je: 112 $ se zanemarujeKraj podm |
VBA CLng Greška tijekom izvođenja 13 Nepodudaranje vrste
Korištenje VBA CLng funkcije sa nizovima koji sadrže ne-numeričke znakove ili znakove koji nemaju značenje u numeričkom kontekstu rezultirat će pogreškom Run-Time '13': Neslaganje vrsta.
1234567 | Pod CLngExample_5 ()'Donji kôd rezultirat će porukom ERROR'CLng ne može rukovati ne -brojčanim znakovimaDim StrEx kao nizStrEx = "Ab13"MsgBox CLng (StrEx)Kraj podm |
VBA CLng Greška tijekom izvođenja 6 Preljev
Korištenje funkcije VBA CLng sa nizovima koji rezultiraju vrijednošću manjom ili većom od očekivanog cijelog broja rezultirat će pogreškom Run-Time '6': Overflow. Cijeli tip podataka u excelu ima očekivanu vrijednost od -2,147,483,648 do 2,147,483,647.
1234567 | Pod CLngExample_6 ()'Donji kôd rezultirat će porukom ERROR'CLng ne može rukovati ne -brojčanim znakovimaDim StrEx kao nizStrEx = "2147483648"MsgBox CLng (StrEx)Kraj podm |
Umorni ste od traženja primjera VBA koda? Isprobajte AutoMacro!
VBA CLng Regionalne postavke
VBA CLng funkcija ima različito ponašanje pretvarajući nizove sa zarezom ili točkom. Koristi regionalne postavke operacijskog sustava za decimalni separator i separator znamenki.
12345678910111213141516 | Pod CLngExample_7 ()Dim StrEx kao nizStrEx = "1,9"MsgBox CLng (StrEx)'Ako regionalne postavke imaju, onda kao razdjelnik za grupiranje'Rezultat je: 19‘Ako regionalne postavke imaju, kao decimalni razdjelnik onda'Rezultat je: 2 (2 jer se 1.9 zaokružuje)StrEx = "1,9"MsgBox CLng (StrEx)'Ako regionalne postavke imaju. kao separator grupiranja tada'Rezultat je: 19'Ako regionalne postavke imaju. kao decimalni separator tada'Rezultat je: 2 (2 jer se 1.9 zaokružuje)Kraj podm |
VBA programiranje | Generator koda radi za vas!
VBA CLng Pretvaranje logičkih vrijednosti u duljine
VBA CLng funkcija može pretvoriti logičke varijable u long. Ako je procijenjeni izraz istinit, dobiveni long je -1, a ako je ocijenjeni izraz lažan, rezultirajući long je 0.
1234567891011121314 | Pod CLngExample_8 ()Dim BoolEx Kao BooleanBoolEx = IstinaMsgBox CLng (BoolEx)'Rezultat je: -1MsgBox CLng (2 = 2)'Rezultat je: -1BoolEx = NetačnoMsgBox CLng (BoolEx)'Rezultat je: 0MsgBox CLng (1 = 2)'Rezultat je: 0Kraj podm |
VBA CLng Pretvaranje datuma u duge
VBA CLng funkcija može pretvoriti datumsku varijablu u long. Vraćena vrijednost je interni broj koji Excel koristi za zaokruživanje pohrane datuma. Ako je taj broj izvan očekivanih dugih granica za VBA, dobivamo pogrešku Run-Time '6': Overflow.
123456789101112 | Pod CLngExample_9 ()Dim DateEx As DateDatumEx = #2/3/1940 #MsgBox CLng (DateEx)'Rezultat je: 14644DatumEx = #8/7/1964 #MsgBox CLng (DateEx)'Rezultat je: 23596DatumEx = #3/7/1934 11:32:04 AM #MsgBox CLng (DateEx)'Rezultat je: 12485Kraj podm |