Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Función Val en VBA, Función Val en VBA

Función Val en VBA

| 6 comentarios

FUNCIÓN VAL

La función VAL en VBA es utilizada para convertir una cadena de texto que contiene números en datos del tipo numérico. Esto es importante ya que una vez que VBA reconoce los datos como números se pueden realizar las operaciones correspondientes.

Ejemplo:

Creemos un formulario donde podamos ingresar dos números y la operación sea la suma de ellos. vba3 300x216, Función Val en VBAvb4 300x164, Función Val en VBA

(Para mayor visualización de la imagen, hacer click en la misma)

Como podemos observar no se realizó la suma (123 +563 = 123563?? ), sino tan solo se unieron los textos, ya que para vba lo que se ha ingresado son caracteres del tipo texto.

En cambio, si utilizamos la función VAL para que nos devuelva los caracteres en formato numérico si se producirá la suma, ya que VAL hace que vba reconozca esos caracteres como números.

vb5 300x165, Función Val en VBAvb6 300x173, Función Val en VBA

(Para mayor visualización de la imagen, hacer click en la misma)

Cabe mencionar que VAL convierte esa cadena de caracteres que contiene números en una variable del tipo Double.

¿Cómo trabaja VAL?

Esta función lee carácter por carácter y se detiene cuando no reconoce a un número. Además los símbolos y caracteres como $, S/. , o la coma causan que la función VAL se detenga . Los espacios en blanco no los lee, sin embargo no causan que se detenga.

 Ejemplo:

Este subprograma devolverá en la celda A1 100.

Sub sergio()
Worksheets("hoja1").Select
a = Val("    100 es mi meta")
Range("a1") = a
End Sub

Este subprograma devolverá en la celda A1 0.

Sub sergio()
Worksheets("hoja1").Select
a = Val("   mi meta es 100")
Range("a1") = a
End Sub

Otro detalle importante es que la función VAL solo reconoce al punto como separador decimal válido.

6 comentarios

Deja una respuesta

Los campos requeridos estan marcados con *.