• No se han encontrado resultados

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER

N/A
N/A
Protected

Academic year: 2021

Share "INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER"

Copied!
111
0
0

Texto completo

(1)

INSTITUTO SUPERIOR TECNOLÓGICO

NORBERT WIENER

Manual del Alumno

ASIGNATURA:

Aplicativos V

(Visual Basic Script y Javascript)

PROGRAMA: S3C

Lima-Perú

(2)

Manual del Alumno

INDICE

Introducción ... 6

ActiveX Scripting ... 6

VBScript en otras aplicaciones y exploradores ... 6

INTERPRETACIÓN ... 6

COMPILACIÓN ... 7

Agregar código de VBScript a una página HTML ... 7

La etiqueta <SCRIPT> ... 7

Tipos de datos de VBScript ... 10

¿Cuáles son los tipos de datos de VBScript? ... 10

Subtipos de Variant ... 10

Variables de VBScript ... 11

¿Qué es una variable? ... 11

Declaración de variables ... 11

Restricciones de nombre ... 12

Alcance y vida de las variables ... 12

Asignación de valores a variables ... 12

Constantes de VBScript ... 13

¿Qué es una constante? ... 13

Creación de constantes ... 13

Variables escalares y variables de matrices ... 14

Instrucción Dim ... 15

Descripción ... 15

Sintaxis : Dim nombredevariable[([subíndices])][, nombredevariable[([subíndices])]] . . . ... 15

Comentarios... 15

Operadores de VBScript ... 17

Prioridad de los operadores ... 17

Operadores de VBScript ... 18 Funciones ... 18 Función Abs ... 18 Función Array ... 18 Función Asc ... 19 Instrucción Call ... 19 Función CBool ... 19 Función CByte ... 20 Función CCur ... 20 Función CDate ... 21 Función CDbl ... 21 Función Chr ... 21 Función CInt ... 22 Función CLng ... 22 Función CSng ... 23 Función CStr... 23 Función Exp ... 24

Funciones Int y Fix ... 24

Función GetObject... 24 Función Hour ... 26 Función IsDate ... 26 Función LBound ... 27 Función LCase ... 27 Función Left ... 27 Función Len ... 27 Función LoadPicture ... 28

Funciones LTrim, RTrim y Trim ... 28

Función Mid ... 28

Función Minute ... 29

Función Month ... 29

(3)

Manual del Alumno

Función Now ... 30 Función RGB ... 30 Función Right ... 30 Función Rnd ... 31 Función Round ... 32 Función Second ... 32 Función Sgn ... 32 Función Space ... 33 Función Sqr ... 33 Función String ... 33 Función UBound ... 34 Función UCase ... 34 Función VarType ... 35 Función Weekday ... 35 Función WeekdayName ... 36 Función Year ... 37 Procedimientos de VBScript ... 38 Tipos de procedimientos ... 38 Procedimientos Sub ... 38 Instrucción Sub ... 38 Procedimientos Function ... 39 Instrucción Function ... 40

Obtención de datos dentro y fuera de procedimientos ... 42

Uso de los procedimientos Sub y Function en código ... 42

Uso de instrucciones condicionales ... 43

Control de la ejecución del programa ... 43

Toma de decisiones utilizando If ... Then ... Else ... 43

Instrucción If...Then...Else ... 43

Ejecución de instrucciones si una condición es True ... 44

Ejecución de ciertas instrucciones si la condición es True y ejecución de otras si es False ... 44

Decisión entre varias alternativas ... 45

Toma de decisiones utilizando Select Case ... 45

Instrucción Select Case... 46

Bucles mediante código ... 47

Uso de bucles para repetir código ... 47

Uso de bucles Do ... 47

Instrucción Do...Loop ... 47

Repetición de instrucciones mientras una condición es True ... 48

Repetición de una instrucción hasta que una condición pasa a ser True ... 49

Salida de una instrucción Do ... Loop desde dentro del bucle ... 49

Uso de While ... Wend... 50

Instrucción While...Wend ... 50

Uso de For ... Next ... 50

Instrucción For...Next ... 51

Uso de For Each...Next... 52

Instrucción For Each...Next ... 53

Operador de Concatenación & ... 55

Operador +... 55 Operadores de comparación ... 56 Función InStr ... 58 Función IsNumeric ... 58 Formateo de Números ... 59 Función FormatNumber ... 59 Función FormatCurrency ... 60 Función FormatPercent ... 62

InputBoxes y Message Box ... 63

Función InputBox ... 63

Función MsgBox ... 64

(4)

Manual del Alumno

Función DateAdd ... 67 Función DateDiff ... 68 Función Day ... 69 Función Time ... 69 Función TimeSerial ... 70 Función TimeValue ... 70 Tipos de eventos ... 70 Eventos de ratón ... 70 Eventos de teclado ... 71 Eventos de enfoque... 71 Eventos de formulario ... 71

Eventos de carga de página ... 71

Modelo de Objetos ... 72 Evento onMouseOver ... 72 Objeto form ... 74 Objeto window ... 74 Objeto document ... 75 Objeto form ... 76 Objeto location ... 76 Objeto navigator ... 76 Objeto history ... 77

Introducción a Java Script ... 78

Escritura de Código en Java Script ... 78

Instrucciones ... 78

Comentarios... 79

Asignaciones e igualdad ... 79

Expresiones ... 79

Caracteristicas ... 80

Diferencia con JAVA ... 80

Principales aplicaciones... 80

Donde incluirlo ... 81

En el cuerpo del documento ... 81

En archivo aparte ... 81

Usando manejadores de evento ... 81

Haciendo una llamada a función ... 82

Variables de Java Script ... 83

Declarar variables ... 83

Nombrar variables ... 83

Conversión... 84

Tipos de Datos ... 85

¿Qué son los tipos de datos de JScript? ... 85

Tipo de dato Cadena ... 85

Tipo de dato numérico ... 85

Tipo Boolean ... 86

Tipo de dato no definido ... 86

Tipo de dato Null ... 86

Operadores de Java Script ... 87

Precedencia de operadores... 87 Arreglos y Cadenas ... 89 Indexación de matrices ... 89 Referencias a matrices ... 89 Objetos Intrínsecos ... 90 Objeto Array ... 90 Objeto String ... 91 Objeto Math ... 91 Objeto Date... 91 Objeto Number ... 93

Control del Flujo del Programa ... 94

(5)

Manual del Alumno

Usar instrucciones condicionales ... 94

Operador condicional ... 95

Usar repeticiones o bucles ... 95

Usar bucles for ... 95

Usar bucles for...in... 96

Usar bucles while ... 96

Usar instrucciones break y continue ... 97

Objeto window ... 98 open ... 98 close ... 98 alert ... 99 status ... 99 defaultStatus ... 99 Objeto document ... 99 write ... 99 lastModified... 99 bgColor ... 99 Objeto history ... 99 Objeto form ... 100 submit ... 100 text ... 100 Objeto date ... 100 Objeto math ... 100 Objeto navigator ... 100 Objeto screen ... 100 Eventos ... 101 Lista de Eventos ... 101 Un ejemplo ... 101 Objeto event ... 102 DHTML ... 103 Qué es CSS ... 103 ANIMACIONES ... 106 ESTILOS ... 106 EJEMPLOS ... 107 Cookies ... 110 Funciones básicas ... 110 Un ejemplo ... 111

(6)

Manual del Alumno

Semana 1 : VBScript y la Web

Introducción

Microsoft Visual Basic Scripting Edition, el miembro más reciente de la familia de lenguajes de programación Visual Basic, suministra una automatización activa a una amplia variedad de entornos, incluidas las secuencias de comandos del cliente de Web en Microsoft Internet Explorer y las secuencias de comandos del servidor de Web en Microsoft Internet Information Server.

Si ya conoce Visual Basic o Visual Basic for Applications, VBScript le será muy familiar. Incluso si no conoce Visual Basic, una vez que lo haya aprendido podrá programar con toda la familia de lenguajes Visual Basic.

ActiveX Scripting

VBScript se comunica con las aplicaciones de host mediante ActiveX™ Scripting. Con ActiveX Scripting, evita que los exploradores y otras aplicaciones host necesiten escribir código especial de integración para cada componente de la secuencia de comandos. ActiveX Scripting permite a un host compilar una secuencia de comandos, obtener y llamar puntos de entrada, y administrar el espacio de nombres disponible para el programador. Con ActiveX Scripting, los distribuidores de lenguajes pueden crear run times de lenguaje estándar para la secuencia de comandos. Microsoft proporcionará soporte de tiempo de ejecución para VBScript. Microsoft está trabajando con varios grupos de Internet para definir el estándar de ActiveX Scripting de modo que se puedan intercambiar los motores de automatización. ActiveX Scripting se utiliza en Microsoft® Internet Explorer y en Microsoft® Internet Information Server.

VBScript en otras aplicaciones y exploradores

Como programador, puede licenciar su implementación de origen de VBScript sin cargo para utilizarla en sus productos. Microsoft proporcionará implementaciones binarias de VBScript para la API de Windows® de 32 bits, la API de Windows de 16 bits y la de Macintosh®. VBScript se integra con exploradores de World Wide Web. VBScript y ActiveX Scripting también se pueden utilizar como un lenguaje de automatización general en otras aplicaciones.

INTERPRETACIÓN

VENTAJAS INCONVENIENTES

El código es cómodo para depurar, ya que no es necesario volver a compilar tras un cambio.

No es necesario disponer de un compilador, ya que el intérprete (que forma parte del navegador) ejecuta el script.

El mantenimiento es fácil y rápido, por parte del autor o de otro programador.

La ejecución se ralentiza, al ser necesaria la interpretación línea a línea cada vez.

El código es visible y puede ser objeto de plagio por parte de otras personas.

El usuario tiene acceso al código y puede modificarlo, estropeando alguna

(7)

Manual del Alumno

COMPILACIÓN

VENTAJAS INCONVENIENTES

El código compilado se ejecuta muy rápido, al no ser necesaria una traducción cada vez. El código compilado no puede ser "abierto" por otras personas. No es necesario transmitir el código fuente.

El código compilado puede estar, íntegramente, incluido en un solo fichero.

Es necesario disponer de un

compilador-linkador para el proceso de la compilación.

El código compilado suele ocupar bastante en disco, ya que incorpora en el propio código algunas librerías del sistema.

Depurar un programa implica volver a compilar tras los cambios.

El código en VBScript puede, además, estar diseñado para su ejecución en el lado del cliente o en el del servidor. La diferencia es que un código que se ejecuta en el lado del servidor no es visible en el lado del cliente. Este recibe los resultados, pero no el código. El código que se debe de ejecutar en el lado del servidor estará incluido en la página web correspondiente entre los tags <% y %> . Además habrá que renombrar la página para aplicarle la extensión .asp (Active Server Page -página activa en servidor-). El funcionamiento intrínseco de la ASP's está fuera de los objetivos de éste temario, aunque lo comentaremos por encima al final. Este texto se refiere, por tanto, al lenguaje VBScript en el lado del cliente.

El lenguaje VBScript solo funciona correctamente con el navegador Internet Explorer 4.0 y superiores, por lo que será necesario disponer del mismo. Los usuarios de otros navegadores no podrán disfrutar de la potencia y versatilidad del VBScript.

Agregar código de VBScript a una página HTML

Puede usar el elemento SCRIPT para agregar código de VBScript a una página HTML.

La etiqueta <SCRIPT>

El código de VBScript se presenta en una página HTML dentro de una parejas de etiquetas <SCRIPT>. Por ejemplo, un procedimiento que comprueba una fecha de envío aparece como:

(8)

Manual del Alumno

<SCRIPT LANGUAGE="VBScript">

<!--

Function PuedeEntregar(Dt)

PuedeEntregar = (CDate(Dt) - Now()) > 2

End Function

-->

</SCRIPT>

Las etiquetas <SCRIPT> de comienzo y fin rodean el código. El atributo LANGUAGE indica el lenguaje de secuencia de comandos. Necesita especificar el lenguaje porque los exploradores pueden utilizar otros lenguajes de secuencia de comandos. Observe que la función PuedeEntregar aparece entre etiquetas de comentario (<!-- y -->). Esto evita que los exploradores que no entienden la etiqueta <SCRIPT> muestra el código.

Como el ejemplo es una función general —no está vinculado a ningún control de formulario en particular— puede incluirlo en la sección HEAD de la página:

<HTML>

<HEAD>

<TITLE>Haga su pedido</TITLE>

<SCRIPT LANGUAGE="VBScript">

<!--

Function PuedeEntregar(Dt)

PuedeEntregar = (CDate(Dt) - Now()) > 2

End Function

-->

</SCRIPT>

</HEAD>

<BODY>

...

Puede utilizar procedimientos en código en cualquier lugar de una página. Puede colocar procedimientos en las secciones BODY y HEAD. Sin embargo, puede que desee colocar todos los procedimientos en la sección HEAD para mantener todo el código junto. Mantener el código en la sección HEAD asegura que todo el código se lee y decodifica antes de que se necesite debido a una llamada dentro de la sección BODY.

Una excepción destacable a esta regla es que puede desear proporcionar formularios en línea con código de secuencia de comandos para responder a eventos de objetos del formulario. Por ejemplo, puede incluir código de secuencia de comandos para responder a un clic en un botón en el formulario:

<HTML>

<HEAD>

<TITLE>Probar eventos de botón</TITLE>

</HEAD>

<BODY>

<FORM NAME="Formulario1">

(9)

Manual del Alumno

<SCRIPT FOR="Boton1" EVENT="onClick"

LANGUAGE="VBScript">

MsgBox "¡Botón presionado!"

</SCRIPT>

</FORM>

</BODY>

</HTML>

La mayoría del código aparecerá en procedimientos Sub o Function y sólo se llamará cuando el código que ha escrito provoca su ejecución. Sin embargo, puede escribir código de VBScript fuera de procedimientos, pero dentro de un bloque SCRIPT. Este código se ejecuta sólo una vez, cuando se carga la página HTML. Esto le permite inicializar los datos o cambiar dinámicamente la apariencia de su página Web cuando se carga.

(10)

Manual del Alumno

Semana 2 :

Bases de VBScript

Tipos de datos de VBScript

¿Cuáles son los tipos de datos de VBScript?

VBScript sólo tiene un tipo de datos que se llama Variant. Un tipo Variant es una clase especial de tipo de datos que puede contener diferentes tipos de información, dependiendo de cómo se utilice. Como Variant es el único tipo de datos en VBScript, también es el único tipo de datos devuelto por todas las funciones en VBScript.

En su forma más sencilla, un tipo Variant puede contener tanto información numérica como de cadena. Un tipo Variant se comporta como un número cuando se utiliza en un contexto numérico y como una cadena cuando se utiliza en un contexto de cadena. Esto quiere decir que si trabaja con datos que parecen números, VBScript asume que son números y realiza lo que es más adecuado para números. Igualmente, si trabaja con datos que sólo pueden ser datos de cadena, VBScript los trata como datos de cadena. Por supuesto, siempre puede hacer que los números se comporten como cadenas, escribiéndolos entre comillas (" ").

Subtipos de Variant

Más allá de las simples clasificaciones numéricas y de cadena, un tipo Variant puede hacer más distinciones acerca de la naturaleza específica de la información numérica. Por ejemplo, puede tener información numérica que representa una fecha o una hora. Cuando se utiliza con datos de fecha u hora, el resultado se expresa siempre como una fecha o una hora. Por supuesto, también puede tener una amplia variedad de información numérica en el intervalo de tamaños de sencillos valores Boolean a enormes números de signo flotante. Estas categorías diferentes de información que puede contener un tipo Variant se llaman subtipos. La mayoría de las veces sólo se puede establecer el tipo de datos que desea en un tipo Variant y se comporta del modo más adecuado para el tipo de datos que contiene.

La tabla siguiente muestra varios subtipos de datos que puede contener un tipo

Variant.

Subtipo Descripción

Empty Variant está sin inicializar. El valor es 0 para variables numéricas o una

cadena de longitud cero ("") para variables de cadena.

Null Variant contiene intencionadamente datos no válidos.

(11)

Manual del Alumno

Byte Contiene un entero entre 0 y 255.

Integer Contiene un entero -32.768 y 32.767.

Currency -922.337.203.685.477,5808 a 922.337.203.685.477,5807.

Long Contiene un entero -2.147.483.648 y 2.147.483.647.

Single Contiene un número de precisión simple y signo flotante entre -3,402823E38 y -1,401298E-45 para valores negativos, y entre 1,401298E-45 y

3.402823E38 para valores negativos.

Double Contiene un número de precisión doble y punto flotante en el intervalo de -1,79769313486232E308 y -4,94065645841247E-324 para valores negativos, y entre 4,94065645841247E-324 y 1,79769313486232E308 para valores positivos.

Date (Time)

Contiene un número que representa una fecha entre el 1 de enero de 100 y el 31 de diciembre de 9999.

String Contiene una cadena de longitud variable que puede contener hasta 2 mil millones de caracteres de longitud.

Object Contiene un objeto.

Error Contiene un número de error.

Puede usar las funciones de conversión para convertir datos un subtipo a otro. Además la función VarType devuelve información acerca de cómo se almacenan los datos en un tipo Variant.

Variables de VBScript

¿Qué es una variable?

Una variable es un marcador de posición útil que hace referencia a una ubicación de la memoria del equipo donde puede almacenar información de programa que puede cambiar durante el tiempo en que se ejecuta la secuencia de comandos. Por ejemplo, podría crear una variable llamada CuentaClics para almacenar el número de veces que el usuario hizo clic en un objeto de una determinada página Web. El lugar donde se ubica la variable en la memoria del equipo no es importante. Lo que es importante es que sólo tiene que hacer referencia a su nombre para ver o cambiar su valor. En VBScript, las variables siempre son de un tipo de datos fundamental, Variant.

Declaración de variables

Declare variables explícitamente en la secuencia de comandos utilizando la instrucción Dim, la instrucción Public y la instrucción Private. Por ejemplo:

Dim GradosFahrenheit

Declare múltiples variables separando cada nombre de variable por una coma. Por ejemplo:

(12)

Manual del Alumno

Dim Arriba, Abajo, Izquierda, Derecha

También puede declarar una variable implícitamente por el simple uso de su nombre en alguna parte de la secuencia de comandos. Esto no se considera adecuado, ya que podría escribir mal el nombre de la variable en uno o más lugares provocando resultados inesperados cuando ejecuta el código. Por este motivo, existe la instrucción Option Explicit para solicitar una declaración explícita de todas las variables. La instrucción Option Explicit debe ser la primera instrucción en la secuencia de comandos.

Restricciones de nombre

Los nombres de variables siguen las normas estándar de denominación en VBScript. Un nombre de variable:

Debe comenzar con un carácter alfabético. No puede contener un punto.

No debe superar 255 caracteres.

Debe ser único en el alcance donde se declara.

Alcance y vida de las variables

El alcance de una variable se determina cuando se declara. Cuando declara una variable dentro de un procedimiento, sólo el código dentro de ese procedimiento puede tener acceso o cambiar el valor de esa variable. Tiene scope local y se llama variable de nivel de procedimiento. i declara una variable fuera de un procedimiento, la hace reconocible en todos los procedimientos de la secuencia de comandos. Este tipo de variable de nivel de secuencia de comandos y tiene alcance de nivel de secuencia de comandos.

El tiempo que una variable existe es su vida. La vida de una variable de nivel de secuencia de comandos se extiende desde el momento en que se declaró hasta el momento en que finaliza la ejecución de la secuencia de comandos. A nivel de procedimiento, una variable existe sólo cuando se encuentra en el procedimiento. Cuando sale del procedimiento, la variable se destruye. Las variables locales son adecuadas como espacio de almacenamiento temporal cuando se ejecuta un procedimiento. Puede tener variables locales del mismo nombre en varios procedimientos diferentes porque cada una sólo se reconoce en el procedimiento en que se declaró.

Asignación de valores a variables

Los valores se asignan a variables creeando un expresión de la siguiente manera: la variable está en la parte izquierda de la expresión y el valor que desea asignar a la misma está a la derecha. Por ejemplo:

(13)

Manual del Alumno

Constantes de VBScript

¿Qué es una constante?

Una constante es un nombre significativo que contiene un número o una cadena que nunca cambia. VBScript define un número de constantes intrínsecas. Puede obtener información sobre estas constantes intrínsecas en Referencia del lenguaje VBScript.

Creación de constantes

En VBScript puede crear constantes definidas por el usuario utilizando la instrucción

Const. Utilizando la instrucción Const, puede crear constantes numéricas o de cadena con nombres significativos y asignarlas a valores literales. Por ejemplo:

Const MiCadena = "Esta es mi cadena."

Const MiEdad = 49

Observe que el literal de cadena se escribe entre comillas (" "). Las comillas son la mejor y más clara forma de diferenciar valores de cadena y valores numéricos. Los

literales de fecha y los literales de hora se representan encerrándolos entre signos de número (#). Por ejemplo:

Const FechaCorte = #6-1-97#

Puede que desee adoptar una combinación de nombres para diferenciar constantes de variables. Esto impedirá que intente reasignar sus valores mientras se ejecuta la secuencia de comandos. Por ejemplo, podría desear utilizar un prefijo "vb" en los nombres de constantes o puede dar nombre a las constantes en mayúsculas. Al diferenciar las constantes de las variables elimina la confusión cuando desarrolla secuencias de comando complejas.

(14)

Manual del Alumno

Semana 3 :

Arreglos

Variables escalares y variables de matrices

Muchas veces, sólo desea asignar un único valor a una variable que ha declarado. Una variable que contiene un único valor es una variable escalar. Otras veces, es útil asignar más de un valor relacionado a una única variable. Entonces puede crear una variable que pueda contener una serie de valores. Esto se llama una variable de matriz. Las variables matriz se declaran de la misma forma que las variables escalares. La diferencia es que una declaración de una variable de matriz utiliza paréntesis ( ) a continuación del nombre de la variable. En el siguiente ejemplo se declara una matriz de una dimensión que contiene 11 elementos:

Dim A(10)

Aunque el número que se muestra entre paréntesis es 10, todas las matrices en VBScript son de base cero, por lo que la matriz realmente contiene 11 elementos. En una matriz de base cero, el número de elementos de la misma siempre es el número mostrado entre paréntesis más uno. Este tipo de matriz se llama una matriz de tamaño fijo.

Asigne datos a cada elemento de la matriz utilizando un índice dentro de la matriz. Comenzando en cero y terminando en 10, es posible asignar datos a los elementos de una matriz del siguiente modo:

A(0) = 256

A(1) = 324

A(2) = 100

. . .

A(10) = 55

Del mismo modo, se pueden recuperar los datos de cualquier elemento utilizando el índice que desee dentro del elemento de la matriz deseado. Por ejemplo:

. . .

AlgunaVariable = A(8)

. . .

Las matrices no están limitadas a una única dimensión. Puede tener hasta 60 dimensiones aunque la mayoría de las personas no pueden comprender más de tres o cuatro. Las dimensiones múltiples se declaran separando con comas los números de tamaño de la matriz dentro del paréntesis. En el siguiente ejemplo, la variable MiTabla es una matriz bidimensional que consta de 6 filas y 11 columnas:

Dim MiTabla(5, 10)

En una matriz bidimensional, el primer número siempre es el número de filas y el segundo el número de columnas.

(15)

Manual del Alumno

Instrucción Dim

Descripción

Declara variables y asigna espacio de almacenamiento.

Sintaxis : Dim nombredevariable[([subíndices])][,

nombredevariable[([subíndices])]] . . .

La sintaxis de la instrucción Dim tiene las siguientes partes:

Parte Descripción

nombredevariable Nombre de la variable que cumple con las convenciones estándar de asignación de nombres de variables.

subíndices Dimensiones de una variable de matriz; se pueden declarar hasta 60 dimensiones múltiples. El argumento subíndices usa la siguiente sintaxis:

límitesuperior [,límitesuperior] . . .

El límite inferior de una matriz siempre es cero.

Comentarios

Las variables declaradas con Dim a nivel de secuencia de comandos están disponibles para todos los procedimientos dentro de la secuencia de comandos. A

nivel de procedimiento, las variables sólo están disponibles dentro del procedimiento.

También puede usar la instrucción Dim con paréntesis vacíos para declarar una matriz dinámica. Después de declarar una matriz dinámica, use la instrucción

ReDim dentro de un procedimiento para definir el número de dimensiones y

elementos de la matriz. Si intenta volver a declarar una dimensión para una variable de matriz cuyo tamaño se especificó explícitamente en una instrucción

Dim, se produce un error.

Cuando se inician las variables, una variable numérica se inicia a 0 y una cadena se inicia a una cadena de longitud cero ("").

Sugerencia Al usar la instrucción Dim en un procedimiento, generalmente se coloca la instrucción Dim

al principio del procedimiento.

Los siguientes ejemplos muestran el uso de la instrucción Dim:

Dim

Nombres(9) ' Declara una matriz con 10 elementos.

Dim

Nombres() ' Declara una matriz dinámica

(16)

Manual del Alumno

También puede declarar una matriz cuyo tamaño cambia durante el tiempo en que se ejecuta la secuencia de comandos. Esto se llama una matriz dinámica. La matriz inicialmente se declara dentro de un procedimiento utilizando la instrucción Dim como con cualquier tipo de matriz o la instrucción ReDim. Sin embargo, en una matriz dinámica, no se establece un tamaño o un número de dimensiones dentro del paréntesis.

Por ejemplo:

Dim MiMatriz()

ReDim OtraMatriz()

Para utilizar una matriz dinámica, debe utilizar a continuación ReDim para determinar el número de dimensiones y el tamaño de cada una de ellas. En el siguiente ejemplo, ReDim establece el tamaño inicial de la matriz dinámica a 25. La siguiente instrucción ReDim cambia el tamaño de la matriz a 30, pero utiliza la palabra clave Preserve para conservar el contenido de la matriz cuando se produce el cambio de tamaño.

ReDim MiMatriz(25)

. . .

ReDim Preserve MiMatriz(30)

No hay límite en cuanto al número de veces que puede cambiar el tamaño de una matriz dinámica, pero debe saber que si hace una matriz más pequeña de lo que era, pierde los datos de los elementos eliminados.

(17)

Manual del Alumno

Semana 4 :

Operadores y Funciones en VBScript

Operadores de VBScript

VBScript tiene un completo conjunto de operadores, incluyendo operadores aritméticos, operadores de comparación, operadores de concatenación y

operadores lógicos.

Prioridad de los operadores

Cuando se producen varias operaciones en una expresión, cada parte se evalúa y se resuelve en un orden predeterminado. Este orden se conoce como prioridad de los operadores. Puede utilizar paréntesis para invalidar el orden de prioridad y forzar que se evalúen algunas partes de una expresión antes que otras. Las operaciones entre paréntesis siempre se ejecutan antes que las de fuera. Sin embargo, dentro de los paréntesis se mantiene la prioridad de los operadores.

Cuando las expresiones contienen operadores de más de una categoría, se evalúan primero los operadores aritméticos, a continuación los operadores de comparación y por último los lógicos. Todos los operadores de comparación tienen la misma prioridad; esto quiere decir que se evalúan en el orden en que aparecen, de izquierda a derecha. Los operadores aritméticos y lógicos se evalúan en el siguiente orden de prioridad.

Aritmético De comparación Lógico

Descripción Símbolo Descripción Símbolo Descripción Símbolo Exponenciación ^ Igualdad = Logical

negation

Not

Negación unaria - Desigualdad <> Logical conjunction

And

Multiplicación * Menor que < Disyunción lógica

Or

División / Mayor que > Exclusión lógica

Xor

División entera \ Menor o igual que

<= Equivalencia lógica

Eqv

Módulo aritmético Mod Mayor o igual que >= Implicación lógica Imp Suma + Equivalencia de objeto Is Resta - Concatenación de cadenas &

(18)

Manual del Alumno

Cuando una multiplicación y una división se producen juntas en una expresión, cada operación se evalúa como ocurre de izquierda a derecha. Del mismo modo, cuando una suma y una resta se producen juntas en una expresión, cada operación se evalúa según el orden de aparición, de izquierda a derecha.

El operador de concatenación de cadenas (&) no es un operador aritmético, pero en la prioridad se ejecuta después de todos los operadores aritméticos y antes de todos los operadores de comparación. El operador Is es un operador de comparación de referencia de objeto. No compara objetos o sus valores; sólo se comprueba para determinar si dos referencias a objetos se refieren al mismo objeto.

Operadores de VBScript

Función Abs

Devuelve el valor absoluto de un número.

Sintaxis : Abs(número)

El argumento número puede ser cualquier expresión numérica válida. Si número contiene Null, se devuelve Null ; si es un valor no iniciado, se devuelve cero.

El valor absoluto de un número es su magnitud sin signo. Por ejemplo, Abs(-1) y

Abs(1) devuelven 1.

El siguiente ejemplo usa la función Abs para compute the absolute value of a number:

Dim MiNumero

MiNumero =

Abs(

50.3

)

'Devuelve 50.3

MiNumero =

Abs(

-50.3

)

'Devuelve 50.3

Función Array

Devuelve un objeto Variant que contiene una matriz.

Sintaxis : Array(listadeargumentos)

El argumento requerido listadeargumentos es una lista de valores separados por comas, que se asignan a los elementos de una matriz contenida en el objeto

Variant. Si no se especifica ningún argumento, se crea una matriz de longitud

cero.

La notación usada para hacer referencia a un elemento de una matriz, consta del nombre de la variable seguido de paréntesis que contienen un número de índice que indica el elemento deseado. En el siguiente ejemplo, la primera instrucción crea una variable llamada A. La segunda instrucción asigna una matriz a la variable A. La última instrucción asigna el valor contenido en la segunda matriz a otra variable.

Dim A

(19)

Manual del Alumno

B = A(2)

Función Asc

Devuelve el código de carácter ANSI que corresponde a la primera letra de una cadena.

Sintaxis : Asc(cadena)

El argumento cadena es cualquier expresión de cadena válida. Si cadena no contiene ningún carácter, se produce un error en tiempo de ejecución.

En el ejemplo siguiente, Asc devuelve el código de carácter ANSI de la primera letra de cada cadena:

Dim MiNumero

MiNumero =

Asc(

"A"

)

'Devuelve 65

MiNumero =

Asc(

"a"

)

'Devuelve 97

MiNumero =

Asc(

"Azúcar"

)

'Devuelve 65

Instrucción Call

Transfiere el control a un procedimiento Sub o Function.

Sintaxis : [Call] nombre [listadeargumentos]

La sintaxis de la instrucción Call tiene las siguientes partes:

Parte Descripción

Call Palabra clave opcional. Si se especifica, debe encerrar

listadeargumentosentre paréntesis. Por ejemplo:

Call MiProc(0)

nombre Requerido. Nombre del procedimiento al que se llama.

listadeargumentos Opcional. List de variables, matrices o expresiones delimitada por comas que se pasa al procedimiento.

No necesita usar la palabra clave Call al llamar a un procedimiento. Sin embargo, si usa la palabra clave Call para llamar a un procedimiento que necesita argumentos,

listadeargumentos debe estar encerrado entre paréntesois. Si omite la palabra

clave Call, también debe omitir los paréntesis que encierran a listadeargumentos. Con cualquier sintaxis de Call que use para llamar a cualquier función intrínseca o definida por el usuario, se descarta el valor devuelto por la función.

Call

MiFuncion("Hola mundo")

Function MiFuncion(texto)

MsgBox texto

End Function

Función CBool

Devuelve una expresión convertida en Variant de subtipo Boolean.

Sintaxis : CBool(expresión)

(20)

Manual del Alumno

Si expresión es cero, se devuelve False; de lo contrario, se devuelve True. Si

expresiónno se puede interpretar como valor numérico, se produce un error en tiempo de ejecución.

El siguiente ejemplo usa la función CBool para convertir una expresión en

Boolean. Si la expresión se evalúa como un valor distinto de cero, CBool devuelve True; de lo contrario, devuelve False.

Dim A, B, Comprobacion

A = 5: B = 5 ' Inicia variables

Comprobacion =

CBool(

A = B

)

' Comprobacion contiene True

A = 0 ' Define la variable

Comprobacion =

CBool(

A

)

' Comprobacion contiene

False

Función CByte

Devuelve una expresión que se convirtió en Variant de subtipo Byte.

Sintaxis : CByte(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con las funciones de conversión de subtipos para mostrar que el resultado de alguna operación se debe expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CByte para forzar aritmética de tipo byte en casos en los que normalmente se usaría aritmética de moneda, precisión simple, precisión doble o entero.

Si expresión está fuera del intervalo aceptable para el subtipo Byte, se produce un error. El siguiente ejemplo usa la función CByte para convertir una expresión en byte:

Dim MiDoble, MiByte

MiDoble = 125.5678 ' MiDoble es un Double

MiByte =

CByte(

MiDoble

)

' MiByte contiene 126

Función CCur

Devuelve una expresión que se convirtió en Variant de subtipo Currency.

Sintaxis : CCur(expresión)

El argumento expresión es cualquier expresión válida.

Debe usar la función CCur para proporcionar conversiones internacionales estándar desde cualquier tipo de datos al subtipo Currency. Por ejemplo, distintos separadores de decimales o de miles se reconocen correctamente según la configuración local de su sistema.

El siguiente ejemplo usa la función CCur para convertir una expresión en tipo de datos Currency:

Dim MiDoble, MiMoneda

MiDoble = 543.214588 ' MiDoble es de tipo Double

MiMoneda =

CCur(

MiDoble * 2

)

' Convierte el resultado de

MiDoble * 2 (1086.429176)

' en tipo de datos Currency

(1086.4292)

(21)

Manual del Alumno

Función CDate

Devuelve una expresión que se convirtió en Variant del subtipo Date.

Sintaxis : CDate(fecha)

El argumento fecha es cualquier expresión de fecha válida.

Use la función IsDate para determinar si se puede convertir fecha en una fecha u hora. CDate reconoce literales de fecha y literales de hora, así como algunos números que se encuentran dentro del rango de fechas aceptable. Al convertir un número a fecha, la parte entera del número se convierte en una fecha. Cualquier parte fraccionaria del número se convierte en una hora del día, a partir de medianoche.

En el siguiente ejemplo se usa la función CDate para convertir una cadena en una fecha. En general, no se recomienda establecer fechas y horas como cadenas mediante programación (como se muestra en este ejemplo). En su lugar, use literales de fecha y hora, como #10/19/1962# o #4:45:23 PM#.

MiFecha = "19 de octubre de 1962"

' Define la fecha

MiHoraCorta =

CDate(

MiFecha

)

' Convierte al tipo de

datos Date

MiHoraCompleta = "4:35:47 PM"

' Define la hora

completa

MiHoraCorta =

CDate(

MiHoraCompleta

)

' Convierte al

tipo de datos Date

Función CDbl

Devuelve una expresión que se convirtió en Variant de subtipo Double.

Sintaxis : CDbl(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con las funciones de conversión de subtipos para mostrar que el resultado de alguna operación se debe expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CDbl o CSng para forzar aritmética de doble precisión o simple precisión en casos en los que normalmente se usaría aritmética de moneda o de entero.

Este ejemplo usa la función CDbl para convertir una expresión en Double.

Dim MiMoneda, MiDoble

MiMoneda = CCur(234.456784) ' MiMoneda es de

tipo Currency.

MiDoble =

CDbl(

MiMoneda * 8.2 * 0.01

)

' Convierte el

resultado en Double.

Función Chr

Devuelve el carácter asociado al código de carácter ANSI especificado.

Sintaxis : Chr(códigodecarácter)

El argumento códigodecarácter es un número que identifica un carácter.

Los números entre 0 y 31 son iguales a los códigos ASCII estándar, no imprimibles. Por ejemplo, Chr(10) devuelve un carácter de avance de línea.

(22)

Manual del Alumno

El siguiente ejemplo usa la función Chr para devolver el carácter asociado al código de carácter especificado:

Dim MiCaracter

MiCaracter =

Chr(

65

)

' Devuelve A.

MiCaracter =

Chr(

97

)

' Devuelve a.

MiCaracter =

Chr(

62

)

' Devuelve >.

MiCaracter =

Chr(

37

)

' Devuelve %.

Función CInt

Devuelve una expresión que se convirtió enVariant del subtipo Integer.

Sintaxis : CInt(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con las funciones de conversión de subtipos para mostrar que el resultado de alguna operación se debería expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CInt o CLng para forzar aritmética de enteros en casos en los que normalmente se usaría aritmética de moneda, precisión simple o precisión doble. Si expresión está fuera del intervalo aceptable para el subtipo Integer, se produce un error.

El siguiente ejemplo usa la función CInt para convert a value to an Integer:

Dim MiDoble, MiEntero

MiDoble = 2345.5678 ' MiDoble es de tipo Double.

MiEntero =

CInt(

MiDoble

)

' MiEntero contiene 2346.

Función CLng

Devuelve una expresión que se convirtió en Variant del subtipo Long.

Sintaxis : CLng(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con las funciones de conversión de subtipos para mostrar que el resultado de alguna operación se debería expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CInt o CLng para forzar aritmética de enteros en casos en los que, normalmente, se usaría aritmética de precisión simple o precisión doble.

Si expresión está fuera del intervalo aceptable para el subtipo Long, se produce un error.

El siguiente ejemplo usa la función CLng para convertir un valor en Long:

Dim MiVal1, MiVal2, MiLong1, MiLong2

MiVal1 = 25427.45: MiVal2 = 25427.55 ' MiVal1, MiVal2

are Doubles.

MiLong1 =

CLng(

MiVal1

)

' MiLong1 contiene 25427.

MiLong2 =

CLng(

MiVal2

)

' MiLong2 contiene 25428.

(23)

Manual del Alumno

Función CSng

Devuelve una expresión que se convirtió en Variant del subtipo Single.

Sintaxis : CSng(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con las funciones de conversión de tipos de datos para mostrar que el resultado de algunas operaciones se debería expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CDbl o CSng para forzar aritmética de precisión doble o precisión simple en casos en los que, normalmente, se usaría aritmética de moneda o de enteros.

Si expresión está fuera del intervalo aceptable para el subtipo Single, se produce un error.

El siguiente ejemplo usa la función CSng para convertir un valor en Single:

Dim MiDoble1, MiDoble2, MiSimple1, MiSimple2 ' MiDoble1,

MiDoble2 are Doubles.

MiDoble1 = 75.3421115: MiDoble2 = 75.3421555

MiSimple1 =

CSng(

MiDoble1

)

' MiSimple1 contiene

75.34211.

MiSimple2 =

CSng(

MiDoble2

)

' MiSimple2 contiene

75.34216.

Función CStr

Devuelve una expresión que se convirtió en Variant del subtipo String.

Sintaxis : CStr(expresión)

El argumento expresión es cualquier expresión válida.

En general, puede documentar su código con funciones de conversión de tipos de datos para mostrar que el resultado de alguna operación se debería expresar como un tipo de datos particular, en lugar del tipo de datos predeterminado. Por ejemplo, use CStr para forzar que el resultado se exprese como String.

Los datos almacenados en expresión determinan el valor devuelto de acuerdo con la siguiente tabla:

Si expresión es CStr devuelve

Boolean Un valor de tipo String que contiene True o False.

Date Un valor de tipo String que contiene una fecha en formato de fecha corta de su sistema.

Null Un error en tiempo de ejecución.

Empty Un valor de tipo String de longitud cero ("").

Error Un valor de tipo String que contiene la palabra Error seguido por el número de error.

Otro valor numérico

(24)

Manual del Alumno

El siguiente ejemplo usa la función CStr para convertir un valor numérico en

String:

Dim MiDoble, MiCadena

MiDoble = 437.324 ' MiDoble es de tipo Double.

MiCadena =

CStr(

MiDoble

)

' MiCadena contiene "437.324".

Función Exp

Devuelve e (la base de los logaritmos naturales) elevado a una potencia.

Sintaxis : Exp(número)

El argumento número puede ser cualquier expresión numérica válida.

Si el valor de número supera 709.782712893, se produce un error. La constante e aproximadamente igual a 2.718282.

El siguiente ejemplo usa la función Exp para devolver e elevado a una potencia:

Dim MiAngulo, MiSenoH ' Define el ángulo en radianes.

MiAngulo = 1.3 ' Calcula el seno hiperbólico.

MiSenoH = (

Exp(

MiAngulo

)

-

Exp(

-1 * MiAngulo

)

) / 2

Funciones Int y Fix

Devuelve la parte entera de un número.

Sintaxis : Int(número)

Fix(número)

El argumento número puede ser cualquier expresión numérica válida. Si número contiene Null, se devuelve Null.

Int y Fix quitan la parte fraccional de número y devuelven el valor entero

resultante.

La diferencia entre Int y Fix es que si número es negativo, Int devuelve el primer entero negativo menor o igual a número, mientras que Fix devuelve el primer entero negativo mayor o igual a número. Por ejemplo, Int convierte -8.4 a -9, y

Fix convierte -8.4 a -8.

Fix(número) es equivalente a:

Sgn(número) *

Int(

Abs(número)

)

Los siguientes ejemplo muestran cómo devuelven partes enteras de números las funciones Int y Fix:

MiNumero =

Int(

99.8

)

' Devuelve 99.

MiNumero =

Fix(

99.2

)

' Devuelve 99.

MiNumero =

Int(

-99.8

)

' Devuelve -100.

MiNumero =

Fix(

-99.8

)

' Devuelve -99.

MiNumero =

Int(

-99.2

)

' Devuelve -100.

MiNumero =

Fix(

-99.2

)

' Devuelve -99.

Función GetObject

Devuelve una referencia a un objeto de automatización desde un archivo.

Sintaxis : GetObject([nombrederuta] [, clase])

La sintaxis de la función GetObject tiene las siguientes partes:

(25)

Manual del Alumno

Parte Descripción

nombrederuta Opcional; String. Ruta y nombre completos del archivo que contiene el objeto que desea recuperar. Si se omite nombrederuta, se requiere clase.

clase Opcional; String. Clase del objeto.

El argumento claseusa la sintaxis nombredeaplicación.tipodeobjeto y tiene las siguientes partes:

Parte Descripción

nombredeaplicación Requerido; String. Nombre de la aplicación que proporciona el objeto.

tipodeobjeto Requerido; String. Tipo o clase de objeto que desea crear.

Use la función GetObject para tener acceso a un objeto de automatización desde un archivo y asignar el objeto a una variable de objeto. Use la instrucción Set para asignar el objeto devuelto por GetObject a la variable de objeto. Por ejemplo:

Dim CADObject

Set CADObject =

GetObject(

"C:\CAD\SCHEMA.CAD"

)

Cuando se ejecuta este código, se inicia la aplicación asociada con el nombre de ruta especificado y el objeto del archivo especificado se activa. Si nombrederuta es una cadena de longitud cero (""), GetObject devuelve una nueva instancia de objeto del tipo especificado. Si se omite el argumento nombrederuta, GetObject devuelve un objeto activo del tipo especificado. Si no existe ningún objeto del tipo especificado, se produce un error.

Algunas aplicaciones le permiten activar parte de un archivo. Agregue un signo de admiración (!) al final del nombre del archivo y, a continuación, agregue una cadena que identifique la parte del archivo que desea activar. Para obtener información acerca de cómo crear esta cadena, consulte la documentación de la aplicación que creó el objeto.

Por ejemplo, en una aplicación de dibujo podría tener varias capas de un dibujo almacenado en un archivo. Podría usar el siguiente código para activar una capa de un dibujo llamado SCHEMA.CAD:

Set ObjetoCapa =

GetObject(

"C:\CAD\SCHEMA

.

CAD!Layer3"

)

Si no especifica la clase de objeto, la automatización determina la aplicación que debe iniciar el objeto para activarlo, basado en el nombre de archivo proporcionado. Sin embargo, es posible que algunos archivos admitan más de una clase de objeto. Por ejemplo, un dibujo puede admitir tres tipos de objeto distintos: un objeto Application, un objeto Drawing y un objeto Toolbar, y todos forman parte del mismo archivo. Para especificar qué objeto desea activar en un archivo, use el argumento opcional clase. Por ejemplo:

Dim MiObjeto

Set

MiObjeto

=

GetObject(

"C:\DIBUJOS\EJEMPLO.DRW",

"FIGMENT.DRAWING"

)

(26)

Manual del Alumno

En el ejemplo anterior, FIGMENT es el nombre de una aplicación de dibujo y DRAWING es uno de los tipos de objeto que admite. Una vez activado un objeto, se hace referencia a él en el código mediante la variable de objeto definida. En el ejemplo anterior, se tiene acceso a las propiedades y métodos del nuevo objeto con la variable de objeto MiObjeto. Por ejemplo:

MiObjeto.Line 9, 90

MiObjeto.InsertText 9, 100, "Hola mundo."

MiObjeto.SaveAs "C:\DIBUJOS\EJEMPLO.DRW"

Función Hour

Devuelve un número entero entre 0 y 23, ambos incluidos, que representa la hora del día.

Sintaxis : Hour(hora)

El argumento hora es cualquier expresión que pueda representar una hora. Si hora contiene Null, se devuelve Null.

El siguiente ejemplo usa la función Hour para obtener la hora a partir de la hora actual:

Dim MiHoraCompleta, MiHora

MiHoraCompleta = Now

MiHora =

Hour(

MiHoraCompleta

)

' MiHora contiene el número

que representa la hora actual.

Función IsDate

Devuelve un valor de tipo Boolean que indica si una expresión se puede o no convertir en una fecha.

Sintaxis : IsDate(expresión)

El argumento expresión puede ser cualquier expresión de fecha o expresión de cadena reconocible como fecha u hora.

IsDate devuelve True si la expresión es una fecha o si se puede convertir en una

fecha válida. De lo contrario, devuelve False. En Microsoft Windows, el intervalo válido de fechas es desde el 1 de enero del año 100 hasta el 31 de diciembre del año 9999; los intervalos varían según el sistema operativo.

El siguiente ejemplo usa la función IsDate para determinar si una expresión se puede o no convertir en una fecha:

Dim MiFecha, SuFecha, NingunaFecha, MiComprobacion

MiFecha = "October 19, 1962": SuFecha = #10/19/62#:

NingunaFecha = "Hola"

MiComprobacion =

IsDate(

MiFecha

)

' Devuelve True.

MiComprobacion =

IsDate(

SuFecha

)

' Devuelve True.

MiComprobacion =

IsDate(

NingunaFecha

)

' Devuelve False.

(27)

Manual del Alumno

Función LBound

Devuelve el subíndice más pequeño disponible para la dimensión indicada de una

matriz.

Sintaxis : LBound(nombredematriz[, dimensión])

La sintaxis de la función LBound tiene las siguientes partes:

Parte Descripción

nombredematriz Nombre de la variable de matriz, que cumple con las convenciones estándar de asignación de nombres de variables.

dimensión Número entero que indica de qué dimensión se devuelve el límite inferior. Use 1 para la primera dimensión, 2 para la segunda y así sucesivamente. Si se omite dimensión, se asume 1.

Función LCase

Devuelve una cadena convertida a minúsculas.

Sintaxis : LCase(cadena)

El argumento cadena es cualquier expresión de cadena válida. Si cadena contiene

Null, se devuelve Null.

Función Left

Devuelve un número de caracteres especificado a partir del lado izquierdo de una cadena.

Sintaxis : Left(cadena, longitud)

La sintaxis de la función Left tiene los siguientes argumentos:

Parte Descripción

cadena Expresión de cadena a partir de la que se devuelven los caracteres que están más a la izquierda. Si cadena contiene Null, se devuelve Null.

longitud Expresión numérica que indica cuántos caracteres se van a devolver. Si es igual a 0, se devuelve una cadena de longitud cero (""). Si es mayor o igual al número de caracteres de cadena, se devuelve la cadena completa.

Función Len

Devuelve el número de caracteres en una cadena o el número de bytes necesarios para almacenar una variable.

Sintaxis : Len(cadena | nombredevariable)

La sintaxis de la función Len tiene las siguientes partes:

Parte Descripción

cadena Cualquier expresión de cadena válida. Si cadena contiene Null, se devuelve Null.

nombredevariable Cualquier nombre de variable válido. Si nombrevariable contiene Null, se devuelve Null.

(28)

Manual del Alumno

En el siguiente ejemplo se usa la función Len para devolver el número de caracteres que contiene una cadena:

Dim MiCadena

MiCadena =

Len(

"VBSCRIPT"

)

MiCadena contiene 8.

Función LoadPicture

Devuelve un objeto de imagen. Sólo está disponible en plataformas de 32 bits.

Sintaxis : LoadPicture(nombredeimagen)

El argumento nombredeimagen es una expresión de cadena que indica el nombre del archivo de imagen que se va a cargar.

Los formatos gráficos reconocidos por LoadPicture incluyen archivos de mapa de bits (.bmp), archivos de iconos (.ico), archivos cifrados de longitud continua (.rle), metaarchivos (.wmf), metaarchivos mejorados (.emf), archivos GIF (.gif) y archivos JPEG (.jpg).

Funciones LTrim, RTrim y Trim

Devuelve una copia de una cadena sin espacios iniciales (LTrim), espacios finales (RTrim) o ambos (Trim).

Sintaxis : LTrim(cadena) RTrim(cadena) Trim(cadena)

El argumento cadena es cualquier expresión de cadena válida. Si cadena contiene

Null, se devuelve Null.

Los siguientes ejemplos usan las funciones LTrim, RTrim y Trim para recortar espacios iniciales, espacios finales y ambos, respectivamente:

Dim MiVar

MiVar =

LTrim(

" vbscript "

)

'MiVar contiene "vbscript ".

MiVar =

RTrim(

" vbscript "

)

'MiVar contiene " vbscript".

MiVar =

Trim(

" vbscript "

)

'MiVar contiene "vbscript".

Función Mid

Devuelve un números especificado de caracteres a partir de una cadena.

Sintaxis : Mid(cadena, inicio[, longitud])

La sintaxis de la función Mid tiene los siguientes argumentos:

Parte Descripción

cadena Expresión de cadena a partir de la que se devuelven los caracteres. Si cadena contiene Null, se devuelve Null.

inicio Posición de carácter en cadena en la que comienza la parte que se va a obtener. Si inicio es mayor que el número de caracteres que hay en cadena, Mid devuelve una cadena de longitud cero ("").

longitud Número de caracteres que se va a devolver. Si se omite o si hay menos caracteres que longitud en el texto (incluido el carácter que está en la posición inicio), se devuelven todos los caracteres desde la posición inicio hasta el final de la cadena.

(29)

Manual del Alumno

El siguiente ejemplo usa la función Mid para devolver seis caracteres, comenzando en el cuarto carácter, en una cadena:

Dim MiVar

MiVar =

Mid(

"VB Script es divertido"

,

4

,

6

)

'MiVar contiene

"Script".

Función Minute

Devuelve un número entero entre 0 y 59, ambos incluidos, que representa el minuto de la hora.

Sintaxis : Minute(hora)

El argumento hora es cualquier expresión que puede representar una hora. Si hora contiene Null, se devuelve Null.

El siguiente ejemplo usa la función Minute para devolver el minuto de la hora:

Dim MiVar

MiVar =

Minute(

Now

)

Función Month

Devuelve un número entero entre 1 y 12, ambos incluidos, que representa el mes del año.

Sintaxis : Month(fecha)

El argumento fecha es cualquier expresión que pueda representar una fecha. Si

fecha contien Null, se devuelve Null.

El siguiente ejemplo usa la función Mes para devolver el mes actual:

Dim MiVar

MiVar =

Month(

Now

)

' MiVar contiene el número

correspondiente al mes actual.

Función MonthName

Devuelve una cadena que indica el mes especificado.

Sintaxis : MonthName(mes[, abreviar])

La sintaxis de la función MonthName tiene las siguientes partes:

Parte Descripción

mes Requerido. La designación numérica del mes. Por ejemplo, enero es 1, febrero es 2 y así sucesivamente.

abreviar Opcional. Valor de tipo Boolean que indica si el nombre del mes se debe abreviar. Si se omite, el valor predeterminado es False, que significa que el nombre del mes no se debe abreviar.

El siguiente ejemplo usa la función MonthName para devolver un nombre de mes abreviado para una expresión de fecha:

Dim MiVar

(30)

Manual del Alumno

Función Now

Devuelve la fecha y hora actuales según la configuración de la fecha y hora de su sistema.

Sintaxis :

Now

El siguiente ejemplo usa la función Now para devolver la fecha y hora actuales:

Dim MiVar

MiVar =

Now

' MiVar contiene la fecha y hora actuales.

Función RGB

Devuelve un número entero que representa un valor de un color RGB.

Sintaxis : RGB(rojo, verde, azul)

La función RGB tiene las siguientes partes:

Parte Descripción

rojo Requerido. Número en el intervalo entre 0 y 255 que representa el componente rojo del color.

verde Requerido. Número en el intervalo entre 0 y 255 que representa el componente verde del color.

azul Requerido. Número en el intervalo entre 0 y 255 que representa el componente azul del color.

Los métodos y propiedades de aplicaciones que aceptan una especificación de color esperan que la especificación sea un número que represente un valor de un color RGB. Un valor de un color RGB especifica la intensidad relativa de rojo, verde y azul para producir la visualización de un color específico.

El byte menos significativo contiene el valor del rojo, el byte del medio contiene el valor del verde y el byte más significativo contiene el valor del azul.

Para aplicaciones que requieren que el orden de los bytes se invierta, la siguiente función proporcion la misma información con los bytes invertidos:

Function InvertirRGB(rojo, verde, azul)

InvertirRGB= CLng(azul + (verde * 256) + (rojo *

65536))

End Function

Se asume que el valor de cualquier argumento RGB que exceda 255, es 255.

Función Right

Devuelve un número de caracteres especificado a partir del lado derecho de una cadena.

Sintaxis : Right(cadena, longitud)

La sintaxis de la función Right tiene los siguientes argumentos:

(31)

Manual del Alumno

Parte Descripción

cadena Expresión de cadena desde la que se devuelven los caracteres que están más a la derecha. Si cadena contiene Null, se devuelve Null.

longitud Expresión numérica que indica cuántos caracteres se van a devolver. Si es igual a 0, se devuelve una cadena de longitud cero. Si es mayor o igual al número de caracteres que hay en cadena, se devuelve toda la cadena.

Para determinar el número de caracteres que hay en cadena, use la función Len. El siguiente ejemplo usa la función Right para devolver un número especificado de caracteres a partir del lado derecho de una cadena:

Dim CualquierCadena, MiCad

CualquierCadena = "Hola mundo" 'Define la cadena.

MiCad =

Right(

CualquierCadena

,

1

)

' Devuelve "d".

MiCad =

Right(

CualquierCadena

,

6

)

' Devuelve " mundo".

MiCad =

Right(

CualquierCadena

,

20

)

' Devuelve "Hola mundo".

Función Rnd

Devuelve un número aleatorio.

Sintaxis : Rnd[(número)]

El argumento número puede ser cualquier expresión numérica válida.

La función Rnd devuelve un valor menor que 1 pero mayor o igual a 0. El valor de

número determina cómo Rnd genera un número aleatorio:

Si número es Rnd genera

Menor que cero El mismo número cada vez, con número como semilla. Mayor que cero El siguiente número aleatorio de la secuencia.

Igual a cero El último número generado.

No suministrado El siguiente número aleatorio de la secuencia.

Para cualquier semilla inicial proporcionada, se genera la misma secuencia de números porque cada llamada sucesiva a la función Rnd usa el número anterior como semilla para el siguiente número de la secuencia.

Antes de llamar a Rnd, use la instrucción Randomize sin ningún argumento para iniciar el generador de números aleatorios con una semilla basada en el reloj del sistema.

Para producir enteros aleatorios dentro de un intervalo específico, use esta fórmula:

Int((límitesuperior - límiteinferior + 1) *

Rnd

+

límiteinferior)

Aquí, límitesuperior es el número más alto del intervalo y límiteinferior es el número más bajo del intervalo.

(32)

Manual del Alumno

Función Round

Devuelve un número redondeado a un número especificado de posiciones decimales.

Sintaxis : Round(expresión[, posicionesdecimales])

La sintaxis de la función Round tiene las siguientes partes:

Parte Descripción

expresión Requerido. Expresión numérica que se va a redondear.

posicionesdecimales Opcional. Número que indica cuántas posiciones a la derecha del decimal se incluyen en el redondeo. Si se omite, la función Round devuelve enteros.

El siguiente ejemplo usa la función Round para redondear un número a dos posiciones decimales:

Dim MiVar, pi

pi = 3.14159

MiVar =

Round(

pi

,

2

)

'MiVar contiene 3.14.

Función Second

Devuelve un número entero entre 0 y 59, ambos incluidos, que representa el segundo del minuto.

Sintaxis : Second(hora)

El argumento hora es cualquier expresión que pueda representar una hora. Si hora contiene Null, se devuelve Null.

El siguiente ejemplo usa la función Second para devolver el segundo actual:

Dim MiSeg

MiSeg =

Second(

Now

)

'MiSeg contiene el número que

representa el segundo actual.

Función Sgn

Devuelve un entero que indica el signo de un número.

Sintaxis : Sgn(número)

El argumento número puede ser cualquier expresión numérica válida.

Valores devueltos

La función Sgn devuelve los siguientes valores:

Si número es Sgn devuelve

Mayor que cero 1

Igual a cero 0

Menor que cero -1

El signo del argumento número determina el valor devuelto de la función Sgn. El siguiente ejemplo usa la función Sgn para determinar el signo de un número:

Referencias

Documento similar

Pero cuando vio a Mar sacar el fuego de bajo su ala, voló de vuelta a su tribu a contarles lo que había visto.... Justo antes de que el sol saliera, Tatkanna se despertó y comenzó

En una perspectiva más sosegada, el problema central para la ética del mundo tecnológico consiste en preservar, por un lado, la fuerza civilizatoria de emanci- pación social y

&#34;No porque las dos, que vinieron de Valencia, no merecieran ese favor, pues eran entrambas de tan grande espíritu […] La razón porque no vió Coronas para ellas, sería

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

159 Diseña un programa que lea una cadena y un número entero k y nos diga si alguna de sus palabras tiene una longitud de k caracteres.. 160 Diseña un programa que lea una cadena y

Primeros ecos de la Revolución griega en España: Alberto Lista y el filohelenismo liberal conservador español 369 Dimitris Miguel Morfakidis Motos.. Palabras de clausura

A partir de los resultados de este análisis en los que la entrevistadora es la protagonista frente a los entrevistados, la información política veraz, que se supone que