Documente Academic
Documente Profesional
Documente Cultură
Las funciones de cadena , como su nombre lo indica, se utilizan para trabajar y tratar
las cadenas de caracteres.
Ejemplo:
'Convertimos
cadena = LCase(cadena)
La función Ucase funciona de la misma manera que Lcase pero convierte el contenido
de una cadena a mayúsculas.
Por ejemplo, si tenemos un control Label1 que contiene un texto que dice: "Porcentaje
de sueldos", escribiendo la siguiente línea:
Label1 = UCase(Label1)
Estas tres funciones se utilizan para eliminar los espacios vacíos de una cadena.
Ejemplos:
Tenemos una variable llamada ciudad con el valor " Barcelona". Para eliminar los
espacios vacíos de la izquierda haríamos lo siguiente:
ciudad = LTrim(ciudad)
MiText = RTrim(MiText)
La Función Trim elimina todos los espacios vacíos de ambos lados de la cadena.
Ejemplo:
Ejemplo:
Como la función Len devuelve un número debemos asignar ese número devuelto en
una variable de tipo numérica.
Ejemplo:
TamanoCadena = Len(MiCadena)
Hay que tener en cuenta que la función Len también toma en cuenta los espacios
vacíos.
Ejempos:
Si queremos obtener el código ASCII del caracter "a", que es el número 97 podríamos
hacer lo siguiente:
num = Asc("a")
En definitiva la función Asc lleva un solo parámetro de tipo String del cual queremos
obtener dicho número.
La Función Chr actúa a la inversa de la función Asc, esto quiere decir, que a partir de
un determinado número nos devolverá el caracter ASCII.
Ejemplo:
letra = Chr(97)
La función InStr se utiliza para buscar una cadena o parte de una cadena dentro de
otra cadena.
Como esta función devuelve un número debemos almacenarla en una variable de tipo
numérica para utilizarla.
Ejemplo:
En este ejemplo la función encontró la cadena "mate" en la posición 15, o sea que la
variable posición pasa a valer 15.
Este ejemplo, muestra como buscar dentro de un control TextBox, el cual tiene dos
opciones, un botón para buscar la primera frase, y otro que sigue buscando a partir de
donde esté ubicda la selección.
Option Explicit
Frase = txt_Buscar
If p > 0 Then
m_Pos = p
With Text1
.SelStart = m_Pos - 1
.SelLength = Len(Frase)
.SetFocus
End With
Else
MsgBox "No se encontró la frase", vbInformation
Text1.SetFocus
End If
End Sub
Call buscar_cadena(m_Pos + 1)
End Sub
Nota: también hay una función similar a Instr llamada InstrRev , y lo que hace es
devolver la posición de la primera concurrencia de una cadena dentro de otra cadena,
pero comenzando por el extremo derecho de la misma
La función Left:
Ejemplo:
Función Right:
Es igual que la función Left pero comienza a extraer caracteres desde el lado derecho
de la cadena.
La función Mid:
Tiene la misma función que las anteriores pero posee tres parámetros. Su sintaxis es:
Mid (cadena, inicio, longitud)
Ejemplos:
Este Otro ejemplo usa la función Mid para realizar un simple efecto tipo máquina de
escribir.
Option Explicit
End Sub
LenFrase = Len(Frase)
DoEvents
i = i + 1
' Obtiene el siguiente caracter
Caracter = Mid(Frase, i, 1)
' texto actual
texto = texto & Caracter
Destino.Print texto ' Imprimi e/ dibuja el texto
' pausa o delay
Pausa Segundos
DoEvents
Loop
End Sub
La función Val convierte una cadena en un número yla función Str un número en una
cadena.
Ejemplos:
cadena = "123456"
cadena = Val(cadena)
cadena2 = 123456
cadena2 = Str(cadena2)
Visual Basic posee muchas funciones para tratar números. A continuación las
principales funciones.
Ejemplo:
Round posee un parámetro opcional por si queremos incluir los dígitos decimales.
Para generar números aleatorios, Visual Basic incluye 2 funciones: Rnd y Randomize.
Ejemplo :
Rnd (número)
Pero para poder generar dichos números aleatorios, debemos utilizar previamente la
función Randomize con la siguiente fórmula:
LimiteInferior = 20
LimiteSuperior = 40
MsgBox Int((LimiteInferior -
LimiteSuperior + 1) * Rnd + LimiteInferior)
Nota: en este enlace podés ver un ejemplo que permite generar números aleatorios no
repetidos
Funciones matemáticas
3 - Funciones de formato
Visual Basic posee varias funciones para darle formato a distintos tipos de datos e
información. A continuación se ve algunos ejemplos de las principales funciones:
Ejemplo
Un ejemplo para ver estos formatos utilizando FormatDateTime: Colocar cinco option
Button, cada botón de opción mostrará los diferentes formatos en el caption del
formulario, es decir en la barra de título.
Código en el formulario:
End Sub
Private Sub Option1_Click()
Me.Caption = FormatDateTime(Now, vbGeneralDate)
End Sub
FormatNumber - Ejemplos:
Numero = 0.489698
Numero = FormatNumber(Numero, 2, vbFalse)
MsgBox Numero
Numero = 1.958754
Numero = FormatNumber(Numero, 2)
MsgBox Numero
Función Format:
La función Format es mas completa que las anteriores funciones, porque puede
manejar mas tipos de datos, y no devuelve solo cadenas, esta también puede devolver
números y fechas.
Ejemplo:
Ejemplos de los principales Formatos con nombre para el manejo de Fechas y Horas:
Visual basic cuenta con una serie de funciones que nos permiten calcular fechas y
horas, por ejemplo generar un intervalo de fechas, sumar y restar fechas y horas y
otras operaciones y cálculos
DateAdd : Devuelve un Variant que contiene una fecha que indica el intervalo de
tiempo que se ha agregado
Ejemplos
El siguiente ejemplo utiliza la función DateDiff para mostrar el itervalo entre dos
fechas. El intervalo lo muestra en segundos , minutos, dias, semanas meses y años,
como muestra el siguiente gráfico
Colocar en el formulario un Command1.
Option Explicit
Me.Cls
Me.Print "Calcular Intervalos entre las fechas " & Fecha_Inicial
& _
" hasta :" & Fecha_Final & vbNewLine & String(150, "-")
& vbNewLine
End Sub
Me.AutoRedraw = True
Command1.Caption = "calcular intervalos "
End Sub
Nota: para restar, usar el signo negativo, como se usa en el último ejemplo.
Para poder restar y agregar segundos a una hora, usar en el parámetro intervalo la
"S", para minutos usar la "n", para horas la "h", para restar y sumar semanas la "ww"
En el siguiente enlace podés ver algunos otros ejemplos que trabajan con dichas
funciones
Función InputBox:
El aspecto mas importante de InputBox es que nos devuelve una cadena con lo que
haya ingresado el usuario en la caja de texto. Luego podemos realizar una tarea
específica dependiendo del valor devuelto.
Ejemplo:
Cuando el usuario presiona Candelar, el InputBox devuelve una cadena vacía. Esto es
importante tenerlo en cuenta para realizar una o tal acción
Si quiseramos por ejemplo desplegar un InputBox, y que este no se cierre hasta que el
usuario si o si haya ingresado un valor, podemos hacerlo de la siguiente forma,
utilizando una condición en un bucle Do Loop
'Muestra el valor
MsgBox Dato, vbInformation
End Sub
Enlace relacionado :
Función MsgBox:
La función MsgBox, que ya se vió varias veces en distintos ejemplos, es muy fácil de
usar y se utiliza para mostrar distintos tipos de mensajes.
Ejemplos de mensajes o cajas de texto con la función MsgBox que podemos mostrar:
Como se ve en los gráficos anteriores, con MsgBox podemos tener variedad a la hora
de mostrar un determinado mensaje, utilizando para ello las diferentes constantes que
incorpora la función.