Funció VBA CLng | Com s'utilitza la funció CLng? (amb exemples)

Funció Excel VBA CLng

"CLNG" significa tipus de dades "Converteix a llarg". El límit de tipus de dades enter és d'entre -32768 i 32767, de manera que qualsevol excés que vulgueu emmagatzemar a aquestes variables haurem d'utilitzar el tipus de dades LONG a VBA.

Les variables són claus en qualsevol llenguatge de programació i VBA tampoc no és diferent. Sense utilitzar variables és gairebé una tasca impossible escriure codis llargs. Si les variables són importants, la variable tipus de dades que assignem a aquestes variables és encara més important perquè el tipus de dades que els assignem és el resultat final que obtenim.

Sovint, podem assignar les dades numèriques com a "Cadena", de manera que es produirà un error en fer càlculs, de manera que mitjançant l'ús de funcions de conversió podem convertir el tipus de dades que desitgem. Les funcions de conversió més utilitzades són CLng, CInt, CDbl, CDate, CDec a vba. En aquest article, us mostrarem la funció de conversió de tipus de dades sencers "CLNG".

Sintaxi

A continuació es mostra la sintaxi de la funció CLNG.

  • Expressió no és res més que el valor o la variable que volem convertir al tipus de dades LONG.

Nota: El valor que estem intentant convertir ha de ser un valor numèric que no sigui un valor numèric "Error 13 del temps d'execució: no coincideix el tipus"

Exemples per utilitzar la funció CLng a VBA

Podeu descarregar aquesta plantilla VBA CLNG Excel aquí: plantilla VBA CLNG Excel

Exemple 1

Ara veurem com convertim el valor emmagatzemat de text al tipus de dades “llarg”.

Per obtenir un exemple, mireu el codi següent.

Codi:

 Sub CLNG_Example1 () Dim LongNumber As String Dim LongResult As Long LongNumber = "2564589" LongResult = CLng (LongNumber) MsgBox LongResult End Sub 

Per tant, ara examineu de prop el codi per entendre com funciona.

En primer lloc, hem declarat dues variables String i Long respectivament.

Codi:

 Dim LongNumber As String Dim Long Result As Long 

Per a la variable de cadena hem assignat el número de valor, però entre cometes dobles, de manera que el que farà és tractar el número "2564589" com una cadena, no com a variable "Llarga". Ara, per a l’altra variable LongResult, hem utilitzat la funció Clng (LongNumber) per convertir el nombre emmagatzemat de cadenes a una variable LONG.

El següent quadre de missatge mostrarà el resultat com un número LLARG que es converteix de cadena a tipus de dades llarg.

Sortida:

Exemple 2

Ara mireu el codi següent.

Codi:

 Sub CLNG_Example2 () Dim LongNumber As String Dim LongResult As Long LongNumber = "Nombre llarg" LongResult = CLng (LongNumber) MsgBox LongResult End Sub 

Això ens hauria de donar el resultat com "No coincideixen els tipus".

Comprendre per què es produeix l’error és molt important per solucionar-lo. Quan mireu de prop les variables de la primera variable LongNumber, hem assignat el valor del text com a "Long Number", llavors hem utilitzat la funció Excel VBA CLNG per convertir-la al tipus de dades LONG.

La raó per la qual hem rebut aquest error és que el tipus de dades LONG només pot acceptar tipus de dades numèriques, ja que hem proporcionat un valor de cadena a la variable; no pot convertir el valor de cadena o el valor de text a un tipus de dades llarg, de manera que dóna l’error com a “ No coincideixen els tipus".

Exemple 3

Un error més que obtenim amb el tipus de dades LONG és "Error de desbordament a vba", és a dir, el tipus de dades variables llargues pot contenir valors de -2.147.483.648 a 2.147.483.647. Per tant, qualsevol valor superior a això provocarà un error de desbordament.

Per obtenir un exemple, mireu el codi següent.

Codi:

 Sub CLNG_Example3 () Dim LongNumber As String Dim LongResult As Long LongNumber = "25645890003" LongResult = CLng (LongNumber) MsgBox LongResult End Sub 

Per a la variable "LongNumber" he assignat el número "25645890003" que supera el límit del tipus de dades "Long". Quan executem el codi anterior es trobarà amb un "Desbordament" error.

Per tant, quan esteu convertint qualsevol altre tipus de dades a tipus de dades llargs, hem de tenir en compte totes les coses anteriors.

Cosa que cal recordar aquí

  • CLNG significa convertir a llarg.
  • Aquesta funció converteix l’altre tipus de dades en un tipus de dades llarg.
  • Heu de conèixer el límit del tipus de dades llarg per evitar errors de desbordament.