VBA CLng-functie - Expressie converteren naar lang

Inhoudsopgave

Deze zelfstudie laat zien hoe u de CLng VBA-functie gebruikt om een ​​uitdrukking om te zetten naar het lange integer-gegevenstype.

CLng-functie

VBA CLng Expressie converteren naar lang

De VBA CLng-functie kan worden gebruikt om uitdrukkingen te converteren naar een lang gegevenstype binnen de VBA-code.

123456 Sub CLngExample_1()MsgBox CLng (12.34) 'Resultaat is: 12MsgBox CLng (12.345) 'Resultaat is: 12MsgBox CLng(-124) 'Resultaat is: -124MsgBox CLng(-12.34) 'Resultaat is: -12Einde sub

VBA CLng-afronding

De VBA CLng-functie rondt het decimale deel van een getaltype of een getalachtige uitdrukking af. Het wordt echter niet in alle gevallen correct afgerond. Wanneer het decimale deel 0,5 is, retourneert de VBA CLng-functie het dichtstbijzijnde even gehele getal.

1234567891011 Sub CLngExample_2()MsgBox CLng(0.34) 'Resultaat is: 0MsgBox CLng(0.99) 'Resultaat is: 1MsgBox CLng(-124.95) 'Resultaat is: -125MsgBox CLng(1.5) 'Resultaat is: 2MsgBox CLng(2.5) 'Resultaat is: 2Einde sub

We kunnen een relatief klein decimaal getal toevoegen aan onze verwachte decimale waarde om het gedrag van de VBA CLng-functie naar het verwachte te veranderen.

1234567891011 Sub CLngExample_3()MsgBox CLng(2.5)'Resultaat is: 2MsgBox CLng(2.5 + 0.001)'Resultaat is: 3MsgBox CLng(14.5)'Resultaat is: 14MsgBox CLng(14.5 + 0.001)'Resultaat is: 15Einde sub

VBA-programmering | Code Generator werkt voor u!

VBA CLng Strings converteren naar Longs

De VBA CLng-functie kan worden gebruikt om strings om te zetten naar longs als de karakters in de string een betekenis hebben als getallen.

123456789101112131415161718 Sub CLngExample_4()Dim StrEx As StringStrEx = "112"MsgBox CLng(StrEx)'Resultaat is: 112StrEx = "112.3"MsgBox CLng(StrEx)'Resultaat is: 112 112.3 is afgerondStrEx = "11,2"MsgBox CLng(StrEx)'Resultaat is: 112 , wordt genegeerdStrEx = "$ 112"MsgBox CLng(StrEx)'Resultaat is: 112 $ wordt genegeerdEinde sub

VBA CLng Runtime-fout 13 Type komt niet overeen

Het gebruik van de VBA CLng-functie met tekenreeksen die niet-numerieke tekens bevatten of tekens die geen betekenis hebben in numerieke context, resulteert in een Runtime-fout '13': Type komt niet overeen.

1234567 Sub CLngExample_5()'De onderstaande code zal resulteren in een ERROR-bericht'CLng kan niet overweg met niet-numerieke tekensDim StrEx As StringStrEx = "Ab13"MsgBox CLng(StrEx)Einde sub

VBA CLng Runtime-fout 6 Overloop

Het gebruik van de VBA CLng-functie met strings die resulteren in een waarde die kleiner of groter is dan het verwachte gehele getal, resulteert in een Runtime-fout '6': Overflow. Integer-gegevenstype in Excel heeft een verwachte waarde van -2.147.483.648 tot 2.147.483.647.

1234567 Sub CLngExample_6()'De onderstaande code zal resulteren in een ERROR-bericht'CLng kan niet overweg met niet-numerieke tekens'Dim StrEx As StringStrEx = "2147483648"MsgBox CLng(StrEx)Einde sub

Moe van het zoeken naar voorbeelden van VBA-codes? Probeer AutoMacro!

VBA CLng Regionale instellingen

VBA CLng-functie heeft ander gedrag bij het converteren van tekenreeksen met komma of punt. Het gebruikt de regionale instellingen van het besturingssysteem voor het decimaalteken en het cijferscheidingsteken.

12345678910111213141516 Sub CLngExample_7()Dim StrEx As StringStrEx = "1,9"MsgBox CLng(StrEx)'Als Regionale instellingen , als scheidingsteken voor groepen hebben, dan'Resultaat is: 19'Als Regionale instellingen , als decimaalteken hebben, dan'Resultaat is: 2 (2 omdat 1,9 wordt afgerond)StrEx = "1.9"MsgBox CLng(StrEx)‘Als Regionale instellingen . als een scheidingsteken voor groepen dan'Resultaat is: 19‘Als Regionale instellingen . als een decimaal scheidingsteken dan'Resultaat is: 2 (2 omdat 1,9 wordt afgerond)Einde sub

VBA-programmering | Code Generator werkt voor u!

VBA CLng Booleans converteren naar Longs

De VBA CLng-functie kan booleaanse variabelen naar longs converteren. Als de geëvalueerde expressie waar is, is de resulterende lange -1 en als de geëvalueerde uitdrukking onwaar is, is de resulterende lange 0.

1234567891011121314 Sub CLngExample_8()Dim BoolEx As BooleanBoolEx = TrueMsgBox CLng(BoolEx)'Resultaat is: -1MsgBox CLng(2 = 2)'Resultaat is: -1BoolEx = FalseMsgBox CLng(BoolEx)'Resultaat is: 0MsgBox CLng(1 = 2)'Resultaat is: 0Einde sub

VBA CLng Datums converteren naar Longs

VBA CLng-functie kan een datumvariabele converteren naar een lange. De geretourneerde waarde is het interne getal dat door Excel wordt gebruikt voor datumopslag, afgerond. Als dat aantal buiten de verwachte lange limieten voor VBA valt, krijgen we een Runtime-fout '6': Overflow.

123456789101112 Sub CLngExample_9()Dim DateEx als datumDatumEx = #2/3/1940#MsgBox CLng(DateEx)'Resultaat is: 14644DatumEx = #8/7/1964#MsgBox CLng(DateEx)'Resultaat is: 23596DatumEx = #3/7/1934 11:32:04 AM#MsgBox CLng(DateEx)'Resultaat is: 12485Einde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave