Resumen: Entrega nº17 del curso Aprender a programar en Visual Basic desde cero.
Codificación aprenderaprogramar.com: CU00318A

 

 

LA FUNCIÓN VAL

En Visual Basic una petición de datos al usuario no necesitará ser dispuesta en el código, sino que se obtendrá a través de un objeto prefabricado: un TextBox. Con frecuencia el dato que queremos obtener será un valor numérico, mientras que sin embargo el contenido de los TextBox es tipo texto.

 
Visual Basic

Por ello deberemos realizar una conversión. La función Val nos permite obtener el contenido de un TextBox en formato numérico (Integer, Single, Double, etc.).

El contenido que introduce un usuario a través de un TextBox tiene carácter de texto. Para convertir un número en formato texto a una variable numérica se usa la función Val. La sintaxis a emplear es:

Variable = Val(Cadena)

 

Ejemplo:

 

Dim A As Single
A = Val(TextBox1.Text)

 

 

Supone que la variable A, que ha sido definida como tipo Single, adopta el contenido numérico del TextBox denominado TextBox1.

La función Val deja de leer la cadena en el primer carácter que no puede reconocer como parte de un número. Los espacios en blanco, los tabuladores y los avances de línea se eliminan.

Val("    38205 (Distrito Norte)")devuelve 38205 como valor numérico. Los espacios en blanco se eliminan, y el resto de cadena a partir de donde no se puede reconocer un valor numérico se ignora. Si la cadena empieza con un contenido no numérico Val devuelve cero. Por ejemplo Val ("    (Distrito Norte) 38205 " devuelve cero.

La función Val sólo reconoce el punto (.) como separador decimal válido (aunque esto puede verse afectado por la configuración regional de tu ordenador). Cuando se usa un  separador decimal diferente, debe realizarse un tratamiento previo de la cadena o utilizarse una función de conversión de tipos como CSng ó CDbl para convertir la cadena a un número.

                 

   Otra forma muy relevante  de pedir datos con Visual Basic consiste en el uso de ventanas
de petición de datos (Inputbox). Cuando se invoca la función Inputbox, se despliega una ventana independiente con un mensaje definido de solicitud de datos al usuario, que dispone de un Textbox asociado para responder y de botones para aceptar o cancelar. La sintaxis es del tipo n = Val(InputBox("Introduzca un número", "Introducción de número")), donde n es una variable que toma el valor que haya introducido el usuario.
Valiéndote de la ayuda, prueba a crear distintos Inputbox.

 

 

A modo de ejemplo simple para ver el resultado de estas funciones, crea un proyecto y sitúa un TextBox sobre el formulario. Escribe el pequeño código que indicamos a continuación y comprueba sus resultados.

 

Código (versionesVB menos recientes): Código (versiones VB más recientes):
Rem Curso Visual Basic aprenderaprogramar.com
Option Explicit
Dim A As Single

Private Sub Form_Load()
A = Val(Text1.Text)
MsgBox ("A vale " & A)
A = Val(InputBox("Introduzca un número", "Introducción de número"))
MsgBox ("A vale " & A)
End Sub
REM Curso Visual Basic aprenderaprogramar.com
Option Explicit On
Public Class Form1
  Dim A As Single

  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  A = Val(TextBox1.Text)
  MsgBox("A vale " & A)
  A = Val(InputBox("Introduzca un número", "Introducción de número"))
  MsgBox("A vale " & A)
  End Sub
End Class

 

 

La función Val convierte a cualquier formato numérico, por tanto puede servir para introducir contenido en variables de tipo Integer, Long, Single, Double, etc.

 

 

 

 

 

 

Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link:  Ver curso completo.
 
Para  hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.

Descargar archivo: