Anda di halaman 1dari 99

Visual Basic 6.

0
Historia
• Visual Basic es un
lenguaje de programación desarrollado por
Alan Cooper para Microsoft. El lenguaje de
programación es un dialecto de BASIC, con
importantes añadidos.
FUNCIONES DE VB
MSGBOX (MESSAGE BOX)

• Son cuadros de mensajes que pueden


utilizarse para enviar advertencias, errores,
etc, al usuario, o bien, para interactuar con
él.
• PARA ENVIAR MENSAJES

• Sintaxis:
MSGBOX(Mensaje),Tipo de cuadro, título
• Ejemplo:
MSGBOX(“ERROR”), Vbcritical, “Mensajes
de error”
• PARA INTERACTUAR CON EL
USUARIO
• Sintaxis:
<variable> = MSGBOX(Mensaje, tipo de cuadro,
título)
• Ejemplo:
RESP = MSGBOX(“Deseas continuar?”,
Vbquestion)
Tipos de cuadro

• Los tipos de cuadro pueden tener diferentes iconos


y botones.
• ICONOS
VbCritical 16
VbQuestion 32
VbExclamation 48
VbInformation 64
• BOTONES

VbOkOnly 0
VbOkCancel 1
VbAbortRetryIgnore 2
VbYesNoCancel 3
VbYesNo 4
VbRetryCancel 5
• Para enviar un mensaje con
combinación de iconos y botones:
• R =MSGBOX(“HOLA”, 48 + 4)
R =MSGBOX(“HOLA”,52)
R = MSGBOX( “HOLA”,
Vbexclamation+VbYesNo)
INPUTBOX

• Son cajas de mensajes, pero permiten al


usuario introducir un valor

• Sintaxis:
<variable> = INPUTBOX(Mensaje, titulo,
default, xpos, ypos)
Nombre = INPUTBOX(“Teclea tu nombre”,
“Ejemplo”)

Nombre = INPUTBOX(“Teclea tu nombre”,


“Ejemplo”, “JOSE”)
• En los ejemplos anteriores la variable
NOMBRE almacena el texto escrito por el
usuario.

• Si el usuario presiona CANCELAR, en la


variable NOMBRE se almacena una cadena
vacía (“”).
• FUNCIONES DE FECHA Y HORA
• FUNCIONES DE MANIPULACION DE
CADENAS
• FUNCIONES NUMERICAS
• FUNCIONES TRIGONOMETRICAS
• FUNCIONES DE DECISION
FUNCIONES
DE FECHA Y HORA
• Date
• Month
• DateAdd
• MonthName
• DateDiff • Now
• DatePart • Second
• Day • Time
• Hour • Timer
• Isdate • WeekDay
• Minute • WeekdayName
• Year
Date

• Devuelve la fecha del sistema


a = Date
a = 25/09/02

• Si se hace una asignación, modifica la fecha


del sistema.
Date = “26/09/02”
DateAdd

• Devuelve una nueva fecha, resultado de


agregar un intervalo determinado de
tiempo a una fecha
• Sintaxis:
DateAdd(Intervalo,Número,Fecha)
Intervalos

• yyyy : Año • w : Día de la semana


• q : Trimestre • ww : Semana
• m : Mes • h : Hora
• y : Día del año • n : Minuto
• d : Día • s : Segundo
DateDiff

• Devuelve la cantidad dada de un intervalo


que existe de diferencia entre dos fechas.
• Sintaxis:
DateDiff(Intervalo, Fecha1, Fecha2)
DatePart

• Devuelve el número correspondiente a una


parte de la fecha, misma que es especificada
como un intervalo.
• Sintaxis:
DatePart(Intervalo, Fecha)
Day

• Devuelve el número del día (1 a 31) de una


fecha dada

• Sintaxis:
Day (Fecha)
Hour

• Devuelve el número de la hora de una


fecha/hora dada.

• Sintaxis:
Hour(Fecha)
Isdate

• Devuelve si una expresión se puede


convertir a fecha.

• Sintaxis:
Isdate(Expresión)
Minute

• Devuelve el número del minuto de una


fecha/hora dada

• Sintaxis:
Minute(Fecha)
Month

• Devuelve el número del mes de una fecha


dada.

• Sintaxis:
Month(Fecha)
MonthName

• Devuelve la cadena que especifica el mes


expresado en número.

• Sintaxis:
MonthName(Mes [,Abreviar])
Now

• Devuelve la fecha y hora del sistema

• Sintaxis:
Now
Second

• Devuelve el número del segundo de una


fecha/hora dada.

• Sintaxis:
Second(Fecha)
Time

• Devuelve la hora del sistema.


• Sintaxis:
Time

• Si se hace una asignación, modifica la hora


del sistema.
Time = a
Timer

• Devuelve el número de segundos


transcurridos desde la media noche.

• Sintaxis:
Timer
WeekDay

• Devuelve el número entero que representa el


día de la semana, donde Domingo es 1 y
sábado es 7.
• Sintaxis
WeekDay(Fecha [,Primerdía])
WeekdayName

• Devuelve la cadena que especifica el día


expresado en número.
• Sintaxis:
WeekdayName(día [, Abreviar] [, primerdía])
Year

• Devuelve el número de año de una fecha


dada.

• Sintaxis:
Year(Fecha)
FUNCIONES DE
MANIPULACION DE CADENAS
• ASC • REPLACE
• CHR • RIGHT
• INSTR • RTRIM
• INSTRREV • SPACE
• ISEMPTY • STR
• ISNULL • STRCONV
• LCASE • STRING
• LEFT • STRREVERSE
• LEN • TRIM
• LTRIM • UCASE
• MID • VAL
LEN

• Devuelve la longitud de una cadena


• Sintaxis:
LEN ( <<Cadena>> )

• Ejemplo:
A = LEN (“HOLA”)  A= 4
A = LEN (“FERROCARRIL”)  A = 11
MID

• Permite extraer una copia de caracteres


de una cadena:
• Sintaxis:
Variable = MID(Cadena, Inicio, longitud)

• Ejemplo:
Letra = MID(“EJEMPLO”, 3, 2)
Letra = “EM”
LEFT

• Permite extraer una copia de caracteres


de una cadena iniciando siempre por la
izquierda.
• Sintaxis:
Variable = LEFT(Cadena, Longitud)

• Ejemplo:
Letra = LEFT(“VISUAL BASIC”, 4)
Letra = “VISU”
RIGHT

• Permite extraer una copia de caracteres


de una cadena iniciando siempre por la
derecha.
• Ejemplo:
Variable = RIGHT(Cadena, Longitud)

• Ejemplo:
Letra = RIGHT(“VISUAL BASIC”, 6)
Letra = “ BASIC”
INSTR

• Permite conocer si una cadena forma


parte de otra, devolviendo la posición
donde esta se encuentre.
• Sintaxis:
Variable = INSTR(inicio, cadena1, cadena2)
Cadena1 = Cadena donde se realizará la
busqueda
Cadena2 = Cadena que se buscará
• Ejemplos:

Pos = INSTR(1, “UNIVERSIDAD”, “V”)


Pos = 4

Pos = INSTR(4, “UNIVERSIDAD”, “I”)


Pos = 8

Pos = INSTR(4, “UNIVERSIDAD”, “L”)


Pos = 0
INSTRREV

• Permite conocer si una cadena forma


parte de otra, devolviendo la posición
donde esta se encuentre, en un orden
invertido (de atrás para adelante).
• Sintaxis:

Variable = INSTRREV(cadena1,Cadena2,
Inicio)
• Ejemplos:

Pos = INSTRREV(“UNIVERSIDAD”, “V”)


Pos = 4

Pos = INSTRREV(“UNIVERSIDAD”, “I”,4)


Pos = 3

Pos = INSTRREV(“UNIVERSIDAD”, “L”,4)


Pos = 0
UCASE

• Convierte una cadena a Mayúsculas


• Sintaxis:
Variable = UCASE(Cadena)

• Ejemplo:
Nombre = UCASE(“UniverSidad”)
Nombre = “UNIVERSIDAD”
LCASE

• Convierte una cadena a Minúsculas


• Sintaxis:
Variable = LCASE(Cadena)

• Ejemplo:
Nombre = LCASE(“UNIveRSiDad”)
Nombre = “universidad”
LTRIM

• Elimina los espacios de la izquierda de


una cadena
• Sintaxis:
Variable = LTRIM(Cadena)

• Ejemplo:
Materia = LTRIM(“ Visual Basic”)
Materia = “Visual Basic”
RTRIM

• Elimina los espacios de la derecha de una cadena


• Sintaxis:
Variable = RTRIM(Cadena)

• Ejemplo:
Materia = RTRIM(“Visual Basic ”)
Materia = “Visual Basic”
TRIM

• Elimina los espacios de la izquierda y derecha de


una cadena.
• Sintaxis:
Variable = TRIM(Cadena)

• Ejemplo:
Materia = RTRIM(“ Visual Basic ”)
Materia = “Visual Basic”
STRING

• Devuelve una cadena de “n” caracteres


• Sintaxis:
STRING( <<Número>>,<<carácter>>)

• Ejemplo:
STRING (8,”A”)  AAAAAAAA
SPACE

• Devuelve una cadena formada por “n”


espacios
• Sintaxis:
SPACE(<<Número>>)

• Ejemplo:
A= “VILLA” & SPACE(5) & “RICA”
A= VILLA RICA
VAL

• Convierte una cadena a número


• Sintaxis:
VAL ( <<Cadena>> )

• Ejemplo
A = VAL(“123”)  A = 123
A = VAL(“12AB”)  A = 12
A = VAL(“ABCD”)  A = 0
STR

• Convierte un numero a cadena


• Sintaxis:
STR ( <<Número>> )

• Ejemplo:
A = STR(123)  A = “123”
STRCONV

• Convierte una cadena de acuerdo a un


código de conversión
• Sintaxis:
STRCONV(Cadena, Código)
• Código:
VbUppercase (Mayúsculas)
VbLowercase (Minúsculas)
VbPropercase (Mayúsculas Primeras letras
• Ejemplo:

A= STRCONV(“Hola”, vbuppercase)
A= HOLA

A= STRCONV(“HOLa”, vblowercase)
A= hola

A= STRCONV(“hola”,vbpropercase
A= Hola
STRREVERSE

• Escribe una cadena al revés


• Sintaxis:
StrReverse(Cadena)

• Ejemplo:
A=StrReverse(“VILLA RICA”)
A= “ACIR ALLIV”
CHR

• Devuelve el carácter asociado al cógido


ASCII especificado
• Sintaxis:
CHR( <<Número>> )

• Ejemplo:
CHR(65)  A
ASC

• Devuelve el Número ASCII del primer


carácter de la cadena especificada.
• Sintaxis:
ASC( <<Cadena>>)

• Ejemplo:
ASC(“A”)  65
REPLACE

• Reemplaza una subcadena especificada


con otra subcadena
• Sintaxis
Replace(Cadena,cadena1,cadena2 [,Inicio])
• Ejemplo
Replace(“FERROCARRIL”,”R”,”L”)
 FELLOCALLIL
ISEMPTY

• Indica si una variable ha sido inicializada


(True / False)

• Sintaxis:
IsEmpty(<<Expresión>>)
ISNULL

• Indica si una expresión contiene datos no


válidos o nulos

• Sintaxis:
Isnull(<<Expresión>>)
FUNCIONES NUMERICAS

• Abs • Rnd
• Hex • Round
• Int, Fix • Sgn
• Isnumeric • Sqr
• Oct
RND (RANDOM)

• Genera números aleatorios entre 0 y 1, cada


uno de ellos con 6 o 7 números decimales.
• Ejemplo:
FOR x = 1 TO 5
Print RND
NEXT x
• Para generar números aleatorios
enteros, basta con multiplicar el
resultado por el número máximo a
obtener.
• Ejemplo: Generar números aleatorios
entre 0 y 10.
Print RND * 10
• Los números que obtiene con la función Rnd
son sólo números pseudoaleatorios.
• Cada vez que inicie el programa utilizando
RND obtendrá la misma secuencia de
números.
• Se necesita una forma de iniciar de manera
diferente cada vez que inicie el programa.
Puede realizar esto de varias formas, pero la
más fácil es añadir : RANDOMIZE
Comentarios
• En Visual Basic 6 solo existen comentarios
de una sola línea, utilizamos la palabra rem
o ‘ para indicar un comentario.
• Ejemplo:
Rem Esto es un comentario
‘Este también es un comentario
Variables

• Es un espacio en memoria, el cual


puede cambiar su valor.
• Su nombre puede tener una longitud
máxima de 255 caracteres.
• Pueden ser una combinación de
letras, números y carácter de
subrayado.
• Debe iniciar con una letra.
Ejemplos:

• Base1_bola • CORRECTO

• 1base_bola • INCORRECTO

• Base1.bola • INCORRECTO

• Estaesunavariable • CORRECTO
Tipos de variables

• String: (Cadena) Guardan caracteres, pueden


guardar hasta 2 billones.
• Integer: (Enteros) Puede guardar valores entre –
32768 y +32767
• Long: (Entero largo) Guarda enteros entre
-2.147.483.648 y +2.147.483.647
• Single: (Simple Precisión) Pueden ser
fraccionarios, tienen una precisión de siete dígitos. El
tamaño (límite) de estos números es de hasta 38
dígitos.
• Double: (Doble precisión) Guarda números con
una precisión de 16 dígitos y permite más de 300
dígitos.
• Currency: (Moneda) Puede tener 4 dígitos a la
derecha del punto decimal y hasta 14 a la izquierda
del mismo.
• Date: (Fecha) Guarda información de fechas y de
horas comprendidas entre la medianoche de enero
del año 100 y la medianoche del 31 de diciembre de
9999.
• Byte: puede contener enteros entre 0 y 255.
• Variant: Si no puede indicar a VB que tipo de información
va a contener la variable, utilice este tipo de datos.
Declaración

• Se utiliza la
sentencia: DIM

Sintaxis:
• DIM <variable> AS <tipo de variable>
Ejemplos:

• Dim NUM as Integer


• Dim NOMBRE as String
• Dim A as Date, Dim B as Currency
• Dim C,D,E as Integer
• Dim TOTAL
• Dim TOTAL as Variant
Declaración de Arreglos
• Sintaxis
– Dim Nombre(Tamaño) As Tipo
– Dim Nombre(inicio To fin) As Tipo
– Dim Nombre(tamaño)(Tamaño) As Tipo
• Ejemplos
– Dim edades(10) As Integer
– Dim nombres (1 to 10) As String
– Dim califs(3)(10) As Integer
Redimencionar Arreglos
• Para Redimencionar Arreglo utilizamos la pala
reservada Redim.
• Si queremos redimencionar un arreglo, y
preservar los datos que en el se encuentran
utilizamos la palabra ReDim Preserve.
• Ejemplos
– Redim arreglo(10)
– Redim arreglo(1 to 10)
– Redim Preserver(1 to 10)
Índices de los arreglos
• Cuando las personas trabajan con arreglos
suelen manejar índices, los índices sirven
para poder acceder los elementos de un
arreglo, eston suelen ir de 0 a n-1, en visual
basic no es asi.
• Los índices en Visual Basic 6 pueden
comenzar en el numero que usted dese por
ejemplo 0 o 1. para solucionar este
problemas podemos utilizar las
combinaciones de ciertas palabras
reservadas, las cuales van en el encabezado
del código
– Option Base 0
Declaración Requerida

• Sentencia: OPTION EXPLICIT


Valores Persistentes

• Cuando VB llama un procedimiento de evento, los


valores anteriores de las variables locales se
pierden. Vuelven a sus valores por omisión
• La solución para esto es utilizar Variables
Estáticas.
• Sintaxis:
• STATIC <variable> AS <tipo de variable>
Cadenas

• Para colocar dos cadenas juntas


(concatenarlas) utilice el signo “&”
Ejem:
Nombre = “Alexis”
Edad = 23
Print Nombre & Edad
Alexis23
Números

• Los números en VB no pueden usar puntos ni


comas para determinar los miles. Se puede
emplear el punto decimal siempre que no
sean enteros.

• Para asignar un valor numérico a una


variable, se coloca el número en el lado
derecho de una sentencia:
• Número = 15
• Si se asigna un número decimal a una variable
entera, automáticamente se redondea.

• Si se asigna un número mayor que los límites que


tiene la variable, VB presentará un mensaje de
error durante la ejecución:
Operaciones con números

• Exponenciación ( ^ )
• Negación (hacer un número negativo) ( - )
• Multiplicación y división ( * y / )
• División entera ( \ )
• La función resto ( Mod )
• Suma y resta ( + y - )

4 * 2 + 16 / 8 + 2 ^ 3 ^ 4
Fechas

• Si se le restan o suman enteros, se


resta o suman días
• Si suma una fracción, cambia la hora
dentro de un día
Dim Fec as Date
Fec = Now
Print Fec
Print Fec - 1000
Constantes

• Las constantes de VB le permiten usar


nombres nemotécnicos para los valores
que no cambian nunca.
• Sintaxis
Const <Nombre> = <Valor>

Const Nombre = “Pedro”


Const Pi = 3.1416
Formato de Números

• Función: FORMAT
• Sintaxis:
FORMAT (Expresión Numérica, CadenaFormato)

FORMAT(123.456789, "###.##") -> 123.46


FORMAT(123.450, "###.###") -> 123.45
FORMAT(123.450, "000.000") -> 123.450
FORMAT(123456789.991, "#,#.##") -> 123,456,789,99.99
Cantidad = 125.12
FORMAT(Cantidad, "$###.##") -> $125.12
Operadores Relacionales

• <> Diferente
• < Menor que...
• <= Menor o igual que...
• > Mayor que...
• >= Mayor i igual que...
Operadores Lógicos

• AND (y)
V V -> V V F -> F
F V -> F F F -> F
• OR (o)
V V -> V V F -> V
F V -> V F F -> F
• NOT (Negación)
ESTRUCTURAS DE
CONTROL
• IF THEN
• Sintaxis:
IF <Condición> THEN
<Sentencias>
ENDIF

Ejemplo:
IF Prom = 10 THEN
Print “EXCENTO”
ENDIF
• IF THEN ELSE Ejemplo:
• Sintaxis IF Prom > 5 THEN
IF <Condición> Print
“APROBADO”
THEN
ELSE
<Sentencias>
Print
ELSE “REPROBADO”
<Sentencias> ENDIF
ENDIF
• ELSEIF
• Se utiliza en IF ANIDADOS.
• Ejemplo:
IF Prom = 10 THEN
Print “EXCENTO”
ELSEIF Prom = 9 THEN
Print “CALIFICACION 9”
ELSEIF Prom = 8 THEN
Print “CALIFICACION 8”
ELSE
Print “OTRA CALIFICACION”
ENDIF
SELECT CASE – END SELECT
• Sintaxis
SELECT CASE
<Variable>
CASE <expresión>
<instrucciones>
CASE <expresión>
<instrucciones>
CASE ELSE
<instrucciones>
END SELECT
SELECT CASE PROM
CASE 10
PRINT “ESTAS EXCENTO”
CASE 5
PRINT “ESTAS REPROBADO”
END SELECT
-----------------------------------------------------
En este caso se está evaluando el
contenido de la varible PROM y solo
ejecuta alguna acción cuandon su
valor es 10 o es 5, con algún otro
valor, no realiza nada.
SELECT CASE PROM
CASE IS > 5
PRINT “APROBADO”
CASE IS < 6
PRINT “REPROBADO”
END SELECT
--------------------------------------------------------
En este caso se está evaluando el contenido de
la variable PROM y ejecuta una acción
cuando el valor es MAYOR QUE 5 o MENOR
QUE 6, es importante notar que para utilizar
operadores relacionales se utiliza la palabra
reservada IS.
SELECT CASE LETRA
CASE “A”,”E”,”I”,”O”,”U”
PRINT “VOCALES”
CASE ELSE
PRINT “CONSONANTES”
END SELECT
--------------------------------------------------------
En este caso se evalúa el contenido de la
variable LETRA, y se utiliza un solo case
para evaluar varias letras, estas tienen que ir
separadas por comas, y para evaluar todo
aquello que no coincida con los case
anteriores, utilice el ELSE.
FOR - NEXT
• Sintaxis
FOR <variable> = <valorinicial> TO <valorfinal>
<instrucciones>
NEXT <variable>
----------------------------------------------------------------
Ejemplo: Para imprimir los números del 1 al 10.
FOR x = 1 TO 10
Print x
NEXT x
• Es importante notar que la sentencia
FOR automáticamente realiza
incrementos de 1 en 1 hasta llegar a
tomar el valor final especificado.
• Si se desea hacer incrementos diferentes
de 1, o decrementos, se utiliza la palabra
reservada STEP, de la siguiente manera:

FOR x = 10 TO 1 STEP –1
Print x
NEXT x
DO LOOP
• Sintaxis:
DO << While/Until>> << Condición>>
<<Instrucciones>>
LOOP

Ejemplo:
num = 0 num = 0
DO While num < 10 DO Until num > 10
Print “HOLA” Print “HOLA”
num = num+1 Num = num + 1
LOOP LOOP
Rompiendo la ejecución de
código
End: Finaliza el programa por completo
End Sub: Finaliza la ejecución de un
procedimiento.
Exit fucntion: Finaliza la ejecución de una
funcion.
Exit For: Rompe el ciclo for
Exit Do: Termina un ciclo do
Declaracion de Funciones
Fucntion NomFun([ByVal o ByRef o Optional] Parametro as Tipo[=Valor]) as Tipo
accion 1
accion 2
accion n
NomFun=Valor
End Fucntion

La palabra optional nos sirve para indicar que


cuando alguien llame una función, el
parámetro lo podemos o poner, si no lo
ponemos el parámetro toma como valor, el
valor dado en el encabezado.
Ejemplo
Fucntion Suma(ByVal a As Integer, b As Integer) As Integer
Suma= a+b ‘Esto Vendría siendo el return en C o Java
End Fucntion
Procedimientos
Sub NombrePreceso()
Accion 1
Accion 2
Accion n
End Sub

Anda mungkin juga menyukai