• No se han encontrado resultados

48959351-Tutorial-de-Visual-Basic-Scripting.pdf

N/A
N/A
Protected

Academic year: 2021

Share "48959351-Tutorial-de-Visual-Basic-Scripting.pdf"

Copied!
162
0
0

Texto completo

(1)

Tutorial de Visual

Basic Scripting

INSTRODUCCIÓN

Los piratas ya no tienen un parche en su ojo ni un garfio en reemplazo de la mano. Tampoco existen los barcos ni los tesoros escondidos debajo del mar. Llegando al año 2000, los piratas se presentan con un cerebro desarrollado, curioso y con muy pocas armas: una simple computadora y una línea telefónica. Hackers. Una palabra que aún no se encuentra en los diccionarios pero que ya suena en todas las personas que alguna vez se interesaron por la informática o leyeron algún diario. Proviene de "hack", el sonido que hacían los técnicos de las empresas telefónicas al golpear los aparatos para que funcionen. Hoy es una palabra temida por empresarios, legisladores y autoridades que desean controlar a quienes se divierten descifrando claves para ingresar a lugares prohibidos y tener acceso a información indebida. Sólo basta con repasar unas pocas estadísticas. Durante 1997, el 54 por ciento de las empresas norteamericanas sufrieron ataques de Hackers en sus sistemas. Las incursiones de los piratas informáticos, ocasionaron pérdidas totales de 137 millones de dólares en ese mismo año. El Pentágono, la CIA, UNICEF, La ONU y demás organismos mundiales han sido víctimas de intromisiones por parte de estas personas que tienen muchos conocimientos en la materia y también una gran capacidad para resolver los obstáculos que se les presentan*. Un hacker puede tardar meses en vulnerar un sistema ya que son cada vez más sofisticados. Pero el lema es viejo: hecha la ley, hecha la trampa.

Los medios de comunicación masivos prefieren tildarlos de delincuentes que interceptan códigos de tarjetas de crédito y los utilizan para beneficio propio. También están los que se intrometen en los sistemas de aeropuertos produciendo un caos en los vuelos y en los horarios de los aviones. Pero he aquí la gran diferencia en cuestión. Los crackers (crack=destruir) son aquellas personas que siempre buscan molestar a otros, piratear software protegido por leyes, destruir sistemas muy complejos mediante la transmisión de poderosos virus, etc. Esos son los crackers. Adolescentes inquietos que aprenden rápidamente este complejo oficio. Se diferencian con los Hackers porque no poseen ningún tipo de ideología cuando realizan sus "trabajos". En cambio, el principal objetivo de los Hackers no es convertirse en delincuentes sino "pelear contra un sistema injusto" utilizando como arma al propio sistema. Su guerra es silenciosa pero muy convincente. El avance de la era informatica ha introducido nuevos terminos en el vocabulario de cada dia. Una de estas palabras, hacker, tiene que ver con los delitos informaticos. Todos estamos familiarizados con las historias de aquellos que consiguen entrar en las corporaciones informatizadas. Pero tenemos la impresion de que el termino "hacker" es uno de los peor entendidos, aplicados y, por tanto, usados en la era informatica. La cultura popular define a los hackers como aquellos que, con ayuda de sus conocimientos informaticos consiguen acceder a los ordenadores de los bancos y de los negociados del gobierno. Bucean por informacion que no les pertenece, roban software caro y

(2)

realizan transacciones de una cuenta bancaria a otra. Los criminologos, por otra parte, describen a los hackers en terminos menos halagadores. Donn Parker los denomina "violadores electronicos" y August Bequai los describe como "vandalos electronicos". Ambos, aunque aseveran que las actividades de los hackers son ilegales, eluden habilmente llamarlos "criminales informaticos". Hacen una clara distincion entre el hacker que realiza sus actividades por diversion y el empleado que de repente decide hacer algo malo. Por tanto, parece que tenemos una definicion en la que caben dos extremos: por un lado, el moderno ladron de bancos y por otro el inquieto. Ambas actividades (y todas las intermedias) son calificadas con el mismo termino. Dificilmente se podria considerar esto como un ejemplo de conceptualizacion precisa. Una gran parte de esta ambigüedad puede seguirse desde el origen durante estos aproximadamente 20 años de vida del mencionado termino. El termino comenzo a usarse aplicandolo a un grupo de pioneros de la informatica del MIT, a principios de la decada de 1960. Desde entonces, y casi hasta finales de la decada de 1970, un hacker era una persona obsesionada por conocer lo mas posible sobre los sistemas informaticos. Los diseñadores del ordenador Apple, Jobs y Wozniack, pueden considerarse hackers en este sentido de la palabra. Pero a principios de la decada de 1980, influenciados por la difusion de la pelicula Juegos de Guerra, y el ampliamente publicado arresto de una "banda de hackers" conocida como la 414, los hackers pasaron a ser considerados como chicos jovenes capaces de violar sistemas informaticos de grandes empresas y del gobierno. Desgraciadamente, los medios de informacion y la comunidad cientifica social no ha puesto mucho esfuerzo por variar esta definicion. El problema para llegar a una definicion mas precisa radica, tanto en la poca informacion que hay sobre sus actividades diarias, como en el hecho de que lo que se conoce de ellos no siempre cabe bajo las etiquetas de los delitos conocidos. Es decir, no hay una definicion legal que sea aplicable a los hackers, ni todas sus actividades conllevan la violacion de las leyes. Esto lleva a que la aplicacion del termino varie segun los casos, dependiendo de los cargos que se puedan imputar y no a raiz de un claro entendimiento de lo que el termino significa. Este problema, y la falta de entendimiento de lo que significa ser un hacker, convierte a esta en una etiqueta excesivamente utilizada para aplicar a muchos tipos de intrusiones informaticas. Parker y Bequai, dos lideres en el estudio de los delitos informaticos, utilizan el termino "hacker" de formas ligeramente diferentes. Parker reconoce que hacking no abarca todo el rango de actividades asociadas a la violacion de los sistemas informaticos, pero lo prefiere al termino "phreaking", que considera muy oscuro. Por otra parte, Bequai no rechaza el termino "phreaking" y a menudo lo aplica a hechos que Parker califica como de hacker. Bequai confunde aun mas el termino al definir al hacker como alguien que utiliza ilegalmente las tarjetas de credito telefonico para acceder a sistemas que distribuyen software comercial ilegalmente. Veremos que esto tiene poco que ver con las actuaciones propias de los hackers, pero es ilustrativa de otros tipos de actividades informaticas inusuales. Los terminos, "hacker", "phreaker" y "pirata" se presentan y definen tal y como los entienden aquellos que se identifican con estos papeles. En primer lugar, el area de los hackers. En la tradicion de esta comunidad informatica, el hacker puede realizar dos tipos de actividades: bien acceder a un sistema informatico, o bien algo mas general, como explorar y aprender a utilizar un sistema informatico. En la primera connotacion, el termino lleva asociados las herramientas y trucos para obtener cuentas de usuarios validos de un sistema informatico, que de otra forma serian inaccesibles para los hackers. Se podria pensar que esta palabra esta intimamente relacionada con la naturaleza repetitiva de los intentos de acceso. Ademas, una vez que se ha conseguido acceder, las cuentas ilicitas a veces compartidas con otros asociados, denominandolas "frescas". He aqui la vision estereotipada de los medios de comunicacion de los hackers un joven de menos de veinte años, con conocimientos de informatica, pegado al teclado de su ordenador, siempre en busca de una cuenta no usada o un punto debil en el sistema de seguridad. Aunque esta vision no es muy precisa, representa bastante bien el aspecto del termino. La segunda dimension del mencionado termino se ocupa de lo que sucede una vez que se ha conseguido acceder al sistema cuando se ha conseguido una clave de acceso. Como el sistema esta siendo utilizado sin autorizacion, el hacker no suele tener, el terminos generales, acceso a los manuales de operacion y otros recursos disponibles para los usuarios legitimos del sistema. Por tanto, el usuario experimenta con estructuras de comandos y explora ficheros para conocer el uso que se da al sistema. En oposicion con el primer aspecto del termino, aqui no se trata solo de acceder al sistema (aunque alguno podria estar buscando niveles de acceso mas restringidos), sino de aprender mas sobre la operacion general del sistema. Contrariamente a lo que piensan los medios de comunicacion, la mayoria de los hackers no destruyen y no dañan deliberadamente los datos. El hacerlo iria en contra de su intencion de mezclarse con el usuario normal y atraeria la atencion sobre su presencia, haciendo que la cuenta usada sea borrada. Despues de gastar un tiempo sustancioso en conseguir la cuenta, el hacker pone una alta prioridad para que su uso no sea descubierto. Ademas de la obvia relacion entre las dos acepciones, la palabra "hacker" se reserva generalmente a aquellos que se dedican al segundo tipo. En otras palabras, un hacker es una persona que tiene el conocimiento, habilidad y deseo de explorar completamente un sistema informatico. El mero hecho de conseguir el acceso (adivinando la clave de acceso) no es suficiente para conseguir la denominacion. Debe haber un deseo de liderar, explotar y usar el sistema despues de haber accedido a él. Esta distincion parece logica, ya que no todos los intrusos mantienen el interes una vez que han logrado acceder al sistema. En el submundo informatico, las claves de acceso y las cuentas suelen intercambiarse y ponerse a disposicion del uso general. Por tanto, el hecho de conseguir el acceso puede considerarse como la parte "facil", por lo que aquellos que utilizan y exploran los sistemas son los que tienen un mayor prestigio. La segunda actividad es la de los phreakers telefonicos. Se convirtio en una actividad de uso comun cuando se publicaron las aventuras de John Draper, en un articulo de la revista Esquire, en 1971. Se trata de una forma de evitar los mecanismos de facturacion de las compañías telefonicas. Permite llamar a de cualquier parte del mundo sin costo practicamente. En muchos casos, tambien evita, o al menos inhibe, la posibilidad de que se pueda trazar el camino de la llamada hasta su origen, evitando asi la posibilidad de ser atrapado. Par la mayor parte de los miembros del submundo informatico, esta es simplemente una herramienta para poder realizar llamadas de larga distancia sin tener que pagar enormes facturas. La cantidad de personas que se consideran phreakers, contrariamente a lo que sucede con los hackers, es relativamente pequeña. Pero aquellos que si se consideran phreakers lo hacen para explorar el sistema telefonico. La mayoria de la gente, aunque usa el telefono, sabe muy poco acerca de él. Los phreakers, por otra parte, quieren aprender mucho sobre el. Este deseo de conocimiento lo resume asi un phreaker activo: "El sistema telefonico es la

(3)

areas de conocimiento. Hay tantas cosas que se pueden conocer que en una tentativa puede aprenderse algo muy importante y en la siguiente no. O puede suceder lo contrario. Todo depende de como y donde obtener la informacion. Yo mismo quisiera trabajar para una empresa de telecomunicaciones, haciendo algo interesante, como programar una central de conmutacion. Algo que no sea una tarea esclavizadora e insignificante. Algo que sea divertido. Pero hay que correr el riesgo para participar, a no ser que tengas la fortuna de trabajar para una de estas compañías. El tener acceso a las cosas de estas empresas, como manuales, etc., debe ser grandioso". La mayoria de la gente del submundo no se acerca al sistema telefonico con esa pasion. Solo estan interesados en explorar sus debilidades para otros fines. En este caso, el sistema telefonico es un fin en si mismo. Otro entrevistado que se identificaba a si mismo como hacker, explicaba: "Se muy poco sobre teléfonos simplemente soy un hacker. Mucha gente hace lo mismo. En mi caso, hacer de phreaker es una herramienta, muy utilizada, pero una herramienta al fin y al cabo". En el submundo informatico, la posibilidad de actuar asi se agradece, luego llego el uso de la tarjeta telefonica. Estas tarjetas abrieron la puerta para realizar este tipo de actividades a gran escala. Hoy en dia no hace falta ningun equipo especial. Solo un telefono con marcacion por tonos y un numero de una de esas tarjetas, y con eso se puede llamar a cualquier parte del mundo. De igual forma que los participantes con mas conocimientos y motivacion son llamados hackers, aquellos que desean conocer el sistema telefonico son denominados phreakers. El uso de las herramientas que les son propias no esta limitada a los phreakers, pero no es suficiente para merecer la distincion. Finalmente llegamos a la "telepirateria" del software. Consiste en la distribucion ilegal de software protegido por los derechos de autor. No nos refiererimos a la copia e intercambio de diskettes que se produce entre conocidos (que es igualmente ilegal), sino a la actividad que se realiza alrededor de los sistemas BBS que se especializan en este tipo de trafico. El acceso a este tipo de servicios se consigue contribuyendo, a traves de un modem telefonico, con una copia de un programa comercial. Este acto delictivo permite a los usuarios copiar, o "cargar", de tres a seis programas que otros hayan aportado. Asi, por el precio de una sola llamada telefonica, uno puede amontonar una gran cantidad de paquetes de software. En muchas ocasiones, incluso se evita pagar la llamada telefonica. Notese que al contrario que las dos actividades de hacker y phreaker, no hay ninguna consideracion al margen de "prestigio" o "motivacion" en la telepirateria. En este caso, el cometer los actos basta para "merecer" el titulo. La telepirateria esta hecha para las masas. Al contrario de lo que sucede con los hackers y los phreakers, no requiere ninguna habilidad especial. Cualquiera que tenga un ordenador con modem y algun software dispone de los elementos necesarios para entrar en el mundo de la telepirateria. Debido a que la telepirateria no requiere conocimientos especiales, el papel de los piratas no inspira ningun tipo de admiracion o prestigio en el submundo informatico. (Una posible excepcion la constituyen aquellos que son capaces de quitar la proteccion del software comercial.) Aunque los hackers y los phreakers de la informatica probablemente no desaprueben la pirateria, y sin duda participen individualmente de alguna forma, son menos activos (o menos visibles) en los BBS que se dedican a la telepirateria. Tienden a evitarlos porque la mayoria de los telepiratas carecen de conocimientos informaticos especiales, y por tanto son conocidos por abusar en exceso de la red telefonica para conseguir el ultimo programa de juegos. Un hacker mantiene la teoria de que son estos piratas los culpables de la mayoria de los fraudes con tarjetas de credito telefonicas. "Los medios de comunicacion afirman que son unicamente los hackers los responsables de las perdidas de las grandes compañías de telecomunicaciones y de los servicios de larga distancia. Este no es el caso. Los hackers representan solo una pequeña parte de estas perdidas. El resto esta causado por “los piratas y ladrones que venden estos codigos en la calle." Otro hacker explica que el proceso de intercambiar grandes programas comerciales por modem normalmente lleva varias horas, y son estas llamadas, y no las que realizan los "entusiastas de telecomunicaciones", las que preocupan a las compañias telefonicas. Pero sin considerar la ausencia de conocimientos especiales, por la fama de abusar de la red, o por alguna otra razon, parece haber algun tipo de division entre los hackers / phreakers y los telepiratas. Despues de haber descrito los tres papeles del submundo informatico, podemos ver que la definicion presentada al principio, segun la cual un hacker era alguien que usaba una tarjeta de credito telefonico robada para cargar alguno de los ultimos juegos, no refleja las definiciones dadas en el propio submundo informatico. Obviamente, corresponde a la descripcion de un telepirata y no a las acciones propias de un hacker o un phreaker. En todo esto hay una serie de avisos. No se quiere dar la impresion de que un individuo es un hacker, un phreaker o un telepirata exclusivamente. Estas categorias no son mutuamente excluyentes. De hecho, muchos individuos son capaces de actuar en mas de uno de estos papeles. Se cree que la respuesta se encuentra en buscar los objetivos que se han expuesto previamente. Recuerdese que el objetivo de un hacker no es entrar en un sistema, sino aprender como funciona. El objetivo de un phreaker no es realizar llamadas de larga distancia gratis, sino descubrir lo que la compañía telefonica no explica sobre su red y el objetivo de un telepirata es obtener una copia del software mas moderno para su ordenador. Asi, aunque un individuo tenga un conocimiento especial sobre los sistemas telefonicos, cuando realiza una llamada de larga distancia gratis para cargar un juego, esta actuando como un telepirata. En cierto modo, esto es un puro argumento semantico. Independientemente de que a un hacker se le etiquete erroneamente como telepirata, los accesos ilegales y las copias no autorizadas de software comercial van a seguir produciendose. Pero si queremos conocer los nuevos desarrollos de la era informatica, debemos identificar y reconocer los tres tipos de actividades con que nos podemos encontrar. El agrupar los tres tipos bajo una sola etiqueta es mas que impreciso, ignora las relaciones funcionales y diferencias entre ellos. Hay que admitir, de todas formas, que siempre habra alguien que este en desacuerdo con las diferencias que se han descrito entre los grupos. En el desarrollo de esta investigacion, quedo de manifiesto que los individuos que realizan actualmente estas actividades no se ponen de acuerdo en cuanto a donde estan las fronteras. Las categorias y papeles, como se ha indicado previamente, no son mutuamente exclusivos. En particular, el mundo de los hackers y los phreakers estan muy relacionados. Pero, de la misma forma que no debemos agrupar toda la actividad del submundo informatico bajo la acepcion de hacker, tampoco debemos insistir en que nuestras definiciones sean exclusivas hasta el punto de ignorar lo que representan. Las tipologias que he presentado son amplias y necesitan ser depuradas. Pero representan un paso mas en la representacion precisa, especificacion e identificacion de las actividades que se dan en el submundo de la informatica.

(4)

Referencia del lenguaje de VBScript

Estos prácticos bloques de información le ayudarán a examinar las diferentes partes del Lenguaje de secuencias

de comandos de Visual Basic.

Encontrará todas las partes del lenguaje de VBScript mostradas por orden alfabético en la Lista alfabética de

palabras clave. Si sólo desea examinar una categoría, por ejemplo objetos, cada categoría del lenguaje tiene su

propia sección, más compacta.

¿Cómo funciona? Haga clic en uno de los encabezados de la izquierda para mostrar una lista de elementos

contenidos en esa categoría. Desde esta lista, seleccione el tema que desea ver. Una vez abierto ese tema, puede

seguir los vínculos a otras secciones relacionadas.

Compruébelo. Estudie algunas instrucciones, examine los métodos o descifre unas pocas funciones. Verá qué

versátil puede llegar a ser la Biblioteca de tiempo de ejecución de secuencias de comandos.

Elemento del lenguaje Descripción

Abs (Función)

Devuelve el valor absoluto de un número.

Suma (+), (Operador)

Suma dos números.

And (Operador)

Realiza una conjunción lógica de dos expresiones.

Array (Función)

Devuelve una Variant que contiene una matriz.

Asc (Función)

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

Asignación (=) (Operador)

Asigna un valor a una variable o propiedad.

Atn (Función)

Devuelve el arcotangente de un número.

Call (Instrucción)

Traspasa un control a un procedimiento Sub o Function.

CBool (Función)

Devuelve una expresión convertida a una Variant del subtipo Boolean.

CBCByte (Función)

Devuelve una expresión convertida a una Variant del subtipo Byte.

CCur, fCCur (Función)

Devuelve una expresión convertida a una Variant del subtipo Currency.

CDate (Función)

Devuelve una expresión convertida a una Variant del subtipo Date.

CDbl (Función)

Devuelve una expresión convertida a una Variant del subtipo Double.

Chr (Función)

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

CInt (Función)

Devuelve una expresión convertida a una Variant del subtipo Integer.

Class (Objeto)

Proporciona acceso a los eventos de una clase creada.

Class (Instrucción)

Declara el nombre de una clase.

Clear (Método)

Borra todos los valores de propiedad del objeto Err.

CLng (Función)

Devuelve una expresión convertida a una Variant del subtipo Long.

Color (Constantes)

Lista de constantes de color.

Comparación (Constantes)

Lista de constantes utilizadas en operaciones de comparación.

Concatenación (&)(Operador)

Fuerza la concatenación de cadenas de dos expresiones.

Const (Instrucción)

Declara constantes para utilizar en lugar de valores literales.

Cos (Función)

Devuelve el coseno de un ángulo.

CreateObject (Función)

Crea y devuelve una referencia a un objeto de Automatización.

CSng (Función)

Devuelve una expresión convertida a una Variant del subtipo Single.

CStr (Función)

Devuelve una expresión convertida a una Variant del subtipo String.

Fecha y hora (Constantes)

Lista de constantes que definen los días de la semana y otras constantes utilizadas en las operaciones de fecha y hora.

Formato de fecha (Constantes)

Lista de constantes utilizadas para dar formato a fechas y horas.

Date (Función)

Devuelve la fecha actual del sistema.

(5)

DateDiff (Función)

Devuelve el número de intervalos entre dos fechas.

DatePart (Función)

Devuelve la parte especificada de una fecha dada.

DateSerial (Función)

Devuelve una Variant del subtipo Date para un día, mes y año especificados.

DateValue (Función)

Devuelve una Variant del subtipo Date.

Day (Función)

Devuelve un número entero entre 1 y 31, ambos inclusive, que representa el día del mes.

Description (Propiedad)

Devuelve o establece la cadena descriptiva asociada con un error.

Dictionary (Objeto)

Objeto que almacena pares de elemento y clave.

Dim (Instrucción)

Declara variables y asigna espacio de almacenamiento.

División (/) (Operador)

Divide dos números y devuelve un resultado de punto flotante.

Do...Loop (Instrucción)

Repite un bloque de instrucciones mientras una condición sea True o hasta que una condición sea True.

Empty

Indica un valor variable no inicializado.

Eqv (Operador)

Realiza una equivalencia lógica de dos expresiones.

Erase (Instrucción)

Vuelve a inicializar los elementos de matrices de tamaño fijo y anula la asignación de espacio de almacenamiento de la matriz dinámica.

Err (Objeto)

Contiene información acerca de los errores en tiempo de ejecución.

Eval (Función)

Evalúa una expresión y devuelve el resultado.

Execute (Método)

Ejecuta una búsqueda de expresión regular con una cadena especificada.

Execute (Instrucción)

Ejecuta una o más instrucciones especificadas.

Exit (Instrucción)

Sale de un bloque de código Do...Loop, For...Next, Function o Sub.

Exp (Función)

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

Exponenciación (^) (Operador)

Eleva un número a la potencia de un exponente.

False

Palabra clave que tiene un valor igual a cero.

FileSystemObject (Objeto)

Proporciona acceso al sistema de archivos de un equipo.

Filter (Función)

Devuelve una matriz con base cero que contiene un subconjunto de una matriz de cadenas basada en un criterio de filtro especificado.

FirstIndex (Propiedad)

Devuelve la posición en una cadena de búsqueda donde ocurre una coincidencia.

Fix (Función)

Devuelve la parte entera de un número.

For...Next (Instrucción)

Repite un grupo de instrucciones un número especificado de veces.

For Each...Next (Instrucción)

Repite un grupo de instrucciones para cada elemento en una matriz o colección.

FormatCurrency (Función)

Devuelve una expresión con formato de moneda utilizando el símbolo de moneda definido en el Panel del control del sistema.

FormatDateTime (Función)

Devuelve una expresión con formato de fecha u hora.

FormatNumber (Función)

Devuelve una expresión con formato de número.

FormatPercent (Función)

Devuelve una expresión con formato de porcentaje (multiplicado por 100) con un carácter % final.

Function (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Function.

GetObject (Función)

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

GetRef (Función)

Devuelve una referencia a un procedimiento que se puede enlazar a un evento.

Global (Propiedad)

Establece o devuelve un valor booleano.

Hex (Función)

Devuelve una cadena que representa el valor hexadecimal de un número.

HelpContext (Propiedad)

Establece o devuelve un Id. de contexto para un tema en un archivo de Ayuda.

HelpFile (Propiedad)

Establece o devuelve una ruta completa a un archivo de Ayuda

Hour (Función)

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

If...Then...Else (Instrucción)

Ejecuta de forma condicional un grupo de instrucciones, dependiendo del valor de una expresión.

(6)

las mayúsculas de las minúsculas.

Imp (Operador)

Realiza una implicación lógica de dos expresiones.

Initialize (Evento)

Ocurre cuando se crea una instancia de la clase asociada.

InputBox (Función)

Muestra un aviso en un cuadro de diálogo, espera a que el usuario escriba texto o haga clic en un botón y devuelve el contenido del cuadro de texto.

InStr (Función)

Devuelve la posición de la primera aparición de una cadena dentro de otra.

InStrRev (Función)

Devuelve la posición de una aparición de una cadena dentro de otra, desde el final de la cadena.

Int (Función)

Devuelve la parte entera de un número.

División entera (\) (Operador)

Divide dos números y devuelve un resultado entero.

Is (Operador)

Compara dos variables de referencia de objetos.

IsArray (Función)

Devuelve un valor booleano que indica si una variable es una matriz.

IsDate (Función)

Devuelve un valor booleano que indica si se puede convertir una expresión en fecha.

IsEmpty (Función)

Devuelve un valor booleano que indica si se inicializó una variable.

IsNull (Función)

Devuelve un valor booleano que indica si una expresión no contiene datos válidos (Null).

IsNumeric (Función)

Devuelve un valor booleano que indica si se puede evaluar una expresión como un número.

IsObject (Función)

Devuelve un valor booleano que indica si una expresión hace referencia a un objeto de Automatización válido.

Join (Función)

Devuelve una cadena creada al unir varias subcadenas contenidas en una matriz.

LBound (Función)

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

LCase (Función)

Devuelve una cadena convertida a minúsculas.

Left (Función)

Devuelve un número de caracteres especificado desde el lado izquierdo de una cadena.

Len (Función)

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

Length (Propiedad)

Devuelve la longitud de una coincidencia encontrada en una cadena de búsqueda.

LoadPicture (Función)

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

Log (Función)

Devuelve el logaritmo natural de un número.

LTrim (Función)

Devuelve una copia de una cadena sin los espacios iniciales.

Match (Objeto)

Proporciona acceso a las propiedades de sólo lectura de una coincidencia de expresión regular.

Matches (Colección)

Colección de objetos Match de expresión regular.

Mid (Función)

Devuelve un número especificado de caracteres de una cadena.

Minute (Función)

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

Diversas (Constantes)

Lista de constantes que no corresponden a ninguna otra categoría.

Mod (Operador)

Divide dos números y devuelve sólo el resto.

Month (Función)

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

MonthName (Función)

Devuelve una cadena que indica el mes especificado.

MsgBox (Constantes)

Lista de constantes utilizadas con la función MsgBox.

MsgBox (Función)

Muestra un mensaje en un cuadro de diálogo, espera a que el usuario haga clic en un botón y devuelve un valor que indica en que botón hizo clic el usuario .

Multiplicación (*) (Operador)

Multiplica dos números.

Negación (-) (Operador)

Indica el valor negativo de una expresión numérica.

Not (Operador)

Realiza una negación lógica en una expresión.

Now (Función)

Devuelve la fecha y hora actual según los valores de fecha y hora de sistema del equipo.

Nothing

Disocia una variable de objeto de cualquier objeto real.

(7)

Number (Propiedad)

Devuelve o establece un valor numérico que especifica un error.

Oct (Función)

Devuelve una cadena que representa el valor octal de un número.

On Error (Instrucción)

Habilita el control de errores.

Precedencia de operadores

Lista que muestra el orden de precedencia entre varios operadores utilizados en VBScript.

Option Explicit (Instrucción)

Fuerza la declaración explícita de todas las variables en una secuencia de comandos.

Or (Operador)

Realiza una disyunción lógica de dos expresiones.

Pattern (Propiedad)

Establece o devuelve el patrón de expresión regular que se busca.

Private (Instrucción)

Declara las variables privadas y asigna espacio de almacenamiento.

PropertyGet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que obtiene (devuelve) el valor de una propiedad.

PropertyLet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que asigna el valor de una propiedad.

PropertySet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que establece una referencia a un objeto.

Public (Instrucción)

Declara las variables públicas y asigna espacio de almacenamiento.

Raise (Método)

Genera un error en tiempo de ejecución.

Randomize (Instrucción)

Inicializa el generador de números aleatorios.

ReDim (Instrucción)

Declara las variables de matriz dinámica y asigna o vuelve a asignar el espacio de almacenamiento en el nivel de procedimiento.

RegExp (Objeto)

Proporciona compatibilidad con expresiones regulares simples.

Rem (Instrucción)

Incluye observaciones explicativas en un programa.

Replace (Función)

Devuelve una cadena en la que se reemplazó una subcadena especificada con otra subcadena un número especificado de veces.

Replace (Método)

Reemplaza el texto encontrado en una búsqueda de expresión regular.

RGB (Función)

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

Right (Función)

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

Rnd (Función)

Devuelve un número aleatorio.

Round (Función)

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

RTrim (Función)

Devuelve una copia de una cadena sin espacios finales.

ScriptEngine (Función)

Devuelve una cadena que representa el lenguaje de secuencias de comandos en uso.

ScriptEngineBuildVersion (Función)

Devuelve el número de versión de compilación del motor de secuencias de comandos en uso.

ScriptEngineMajorVersion (Función)

Devuelve el número de la versión principal del motor de secuencias de comandos en uso.

ScriptEngineMinorVersion (Función)

Devuelve el número de la versión secundaria del motor de secuencias de comandos en uso.

Second (Función)

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

Select Case (Instrucción)

Ejecuta uno de entre varios grupos de instrucciones, según el valor de una expresión.

Set (Instrucción)

Asigna la referencia de un objeto a una variable o propiedad.

Sgn (Función)

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

Sin (Función)

Devuelve el seno de un ángulo.

Source (Propiedad)

Devuelve o establece el nombre del objeto o aplicación que generó originalmente el error.

Space (Función)

Devuelve una cadena compuesta por el número especificado de espacios.

Split (Función)

Devuelve una matriz unidimensional con base cero que contiene un número especificado de subcadenas.

Sqr (Función)

Devuelve la raíz cuadrada de un número.

StrComp (Función)

Devuelve un valor que indica el resultado de una comparación de cadenas.

Cadena (Constantes)

Lista de constantes de cadena.

(8)

StrReverse (Función)

Devuelve una cadena en la que está invertido el orden de caracteres de una cadena especificada.

Sub (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento Sub.

Resta (-) (Operador)

Encuentra la diferencia entre dos números o indica el valor negativo de una expresión numérica.

Tan (Función)

Devuelve la tangente de un ángulo.

Terminate (Evento)

Ocurre cuando se termina una instancia de la clase asociada.

Test (Método)

Ejecuta una búsqueda de expresión regular en una cadena especificada.

Time (Función)

Devuelve una Variant del subtipo Date que indica la hora actual del sistema.

Timer (Función)

Devuelve el número de segundos que transcurrieron desde las 12:00 a.m.(medianoche).

TimeSerial (Función)

Devuelve una Variant del subtipo Date que contiene la hora de una hora, minuto y segundo específicos.

TimeValue (Función)

Devuelve una Variant del subtipo Date que contiene la hora.

Trim (Función)

Devuelve una copia de una cadena sin espacios iniciales o finales.

Triple estado (Constantes)

Utilícelas en cualquier parte de su código para representar los valores mostrados en cada una.

True

La palabra clave que tiene un valor igual a -1.

TypeName (Función)

Devuelve una cadena que proporciona información acerca del subtipo Variant de una variable.

UBound (Función)

Devuelve el mayor subíndice disponible para la dimensión indicada en una matriz.

UCase (Función)

Devuelve una cadena convertida a mayúsculas.

Value (Propiedad)

Devuelve el valor o texto de una coincidencia encontrada en una cadena de búsqueda.

VarType (Constantes)

Lista de constantes que definen los subtipos Variant.

VarType (Función)

Devuelve un valor que indica el subtipo de una variable.

VBScript (Constantes)

Diversas categorías de constantes proporcionadas en VBScript.

Weekday (Función)

Devuelve un número entero que representa el día de la semana.

WeekdayName (Función)

Devuelve una cadena que indica el día de la semana especificado.

While...Wend (Instrucción)

Ejecuta una serie de instrucciones mientras una condición dada sea True.

With (Instrucción)

Ejecuta una serie de instrucciones en un único objeto.

Xor (Operador)

Realiza una exclusión lógica en dos expresiones.

Year (Función)

Devuelve un número entero que representa el año.

Color (Constantes)

Lista de constantes de colores.

Comparación (Constantes)

Lista de constantes utilizadas en operaciones de comparación.

Fecha y hora (Constantes)

Lista de constantes que definen días de la semana y otras constantes utilizadas en las operaciones de fecha y hora.

Date Format (Constantes)

Lista de constantes utilizadas para dar formato a fechas y horas.

Diversas (Constantes)

Lista de constantes que no corresponden a ninguna otra categoría.

MsgBox (Constantes)

Lista de constantes utilizadas con la función MsgBox.

Cadena (Constantes)

Lista de constantes de cadena.

Triple estado (Constantes)

Utilícelas en cualquier parte de su código para representar los valores mostrados para cada una.

VarType (Constantes)

Lista de constantes que definen subtipos Variant.

VBScript (Constantes)

Diversas categorías de constantes proporcionadas en VBScript.

Initialize (Evento)

Ocurre cuando se crea una instancia de la clase asociada.

(9)

Abs (Función)

Devuelve el valor absoluto de un número.

Array (Función)

Devuelve una Variant que cotiene una matriz.

Asc (Función)

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

Atn (Función)

Devuelve el arcotangente de un número.

CBool (Función)

Devuelve una expresión convertida a una Variant del subtipo Boolean.

CByte (Función)

Devuelve una expresión convertida a una Variant del subtipo Byte.

CCur (Función)

Devuelve una expresión convertida a una Variant del subtipo Currency.

CDate (Función)

Devuelve una expresión convertida a una Variant del subtipo Date.

CDbl (Función)

Devuelve una expresión convertida a una Variant del subtipo Double.

Chr (Función)

Devuelve el caracter asociado con el código de caracteres ANSI especificado.

CInt (Función)

Devuelve una expresión convertida a una Variant del subtipo Integer.

CLng (Función)

Devuelve una expresión convertida a una Variant del subtipo Long.

Cos (Función)

Devuelve el coseno de un ángulo.

CreateObject (Función)

Crea y devuelve una referencia a un objeto de Automatización.

CSng (Función)

Devuelve una expresión convertida a una Variant del subtipo Single.

CStr (Función)

Devuelve una expresión convertida a una Variant del subtipo String.

Date (Función)

Devuelve la fecha del sistema actual.

DateAdd (Función)

Devuelve una fecha a la que se agregó un intervalo de tiempo especificado.

DateDiff (Función)

Devuelve el número de intervalos entre dos fechas.

DatePart (Función)

Devuelve la parte especificada de una fecha dada.

DateSerial (Función)

Devuelve una Variant del subtipo Date para un año, mes y día especificados.

DateValue (Función)

Devuelve una Variant del subtipo Date.

Day (Función)

Devuelve un número entero entre 1 y 31, ambos inclusive, que representa el día del mes.

Eval (Función)

Evalúa una expresión y devuelve el resultado.

Exp (Función)

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

Filter (Función)

Devuelve una matriz con base cero que contiene un subconjunto de una matriz de cadenas basado en un criterio de filtro especificado.

Fix (Función)

Devuelve la parte entera de un número.

FormatCurrency (Función)

Devuelve una expresión con formato de moneda utilizando el símbolo de moneda definido en el Panel de control del sistema.

FormatDateTime (Función)

Devuelve una expresión con formato de fecha u hora.

FormatNumber (Función)

Devuelve una expresión con formato de número.

FormatPercent (Función)

Devuelve una expresión con formato de porcentaje (multiplicado por 100) con un caracter % final.

GetObject (Función)

Devuelve una referencia a un objeto de Automatización de un archivo.

GetRef (Función)

Devuelve una referencia a un procedimiento que se puede enlazar a un evento.

Hex (Función)

Devuelve una cadena que representa el valor hexadecimal de un número.

Hour (Función)

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

InputBox (Función)

Muestra un aviso en un cuadro de diálogo, espera a que el usuario escriba texto o haga clic en un botón y devuelve el contenido del cuadro de texto.

InStr (Función)

Devuelve la posición del primer caso de una cadena dentro de otra.

InStrRev (Función)

Devuelve la posición de la aparición de una cadena dentro de otra, desde el final de la cadena.

Int (Función)

Devuelve la parte entera de un número.

IsArray (Función)

Devuelve un valor Boolean que indica si una variable es una matriz.

IsDate (Función)

Devuelve un valor Boolean que indica si una expresión se puede convertir a una fecha.

(10)

IsNull (Función)

Devuelve un valor Boolean que indica si una expresión no contiene datos válidos (Null).

IsNumeric (Función)

Devuelve un valor Boolean que indica si se puede evaluar una expresión como un número.

IsObject (Función)

Devuelve un valor Boolean que indica si una expresión hace referencia a un objeto de Automatización válido.

Join (Función)

Devuelve una cadena creada uniendo varias subcadenas contenidas en una matriz.

LBound (Función)

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

LCase (Función)

Devuelve una cadena convertida a minúsculas.

Left (Función)

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

Len (Función)

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

LoadPicture (Función)

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

Log (Función)

Devuelve el logaritmo natural de un número.

LTrim (Función)

Devuelve una copia de una cadena sin espacios iniciales.

Mid (Función)

Devuelve un número especificado de caracteres de una cadena.

Minute (Función)

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

Month (Función)

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

MonthName (Función)

Devuelve una cadena que indica el mes especificado.

MsgBox (Función)

Muestra un mensaje en un cuadro de diálogo, espera a que el usuario escriba texto o haga clic en un botón y devuelve un valor que indica el botón en el que hizo clic el usuario.

Now (Función)

Devuelve la fecha y hora actual según los valores de fecha y hora de sistema del equipo.

Oct (Función)

Devuelve una cadena que representa el valor octal de un número.

Replace (Función)

Devuelve una cadena en la que se reemplazó una subcadena especificada con otra subcadena un número especificado de veces.

RGB (Función)

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

Right (Función)

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

Rnd (Función)

Devuelve un número aleatorio.

Round (Función)

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

RTrim (Función)

Devuelve una copia de una cadena sin espacios finales.

ScriptEngine (Función)

Devuelve una cadena que representa el lenguaje de secuencias de comandos en uso.

ScriptEngineBuildVersion (Función)

Devuelve el número de versión de la compilación del motor de secuencias de comandos en uso.

ScriptEngineMajorVersion (Función)

Devuelve el número de la versión principal del motor de secuencias de comandos en uso.

ScriptEngineMinorVersion (Función)

Devuelve el número de la versión secundaria del motor de secuencias de comandos en uso.

Second (Función)

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

Sgn (Función)

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

Sin (Función)

Devuelve el seno de un ángulo.

Space (Función)

Devuelve una cadena compuesta por el número especificado de espacios.

Split (Función)

Devuelve una matriz unidimensional con base cero que contiene un número especificado de subcadenas.

Sqr (Función)

Devuelve la raíz cuadrada de un número.

StrComp (Función)

Devuelve un valor que indica el resultado de una comparación de cadenas.

String (Función)

Devuelve una cadena de caracteres repetidos de la longitud especificada.

StrReverse (Función)

Devuelve una cadena en la que se invirtió el orden de los caracteres de una cadena especificada.

Tan (Función)

Devuelve la tangente de un ángulo.

(11)

Timer (Función)

Devuelve el número de segundos que transcurrieron desde las 12:00 a.m. (medianoche).

TimeSerial (Función)

Devuelve una Variant del subtipo Date que contiene la hora para una hora, minuto y segundo específicos.

TimeValue (Función)

Devuelve una Variant del subtipo Date que contiene la hora.

Trim (Función)

Devuelve una copia de una cadena sin espacios iniciales o finales.

TypeName (Función)

Devuelve una cadena que proporciona información de subtipos Variant acerca de una variable.

UBound (Función)

Devuelve el mayor subíndice disponible para la dimensión indicada de una matriz.

UCase (Función)

Devuelve una cadena convertida a mayúsculas.

VarType (Función)

Devuelve un valor que indica el subtipo de una variable.

Weekday (Función)

Devuelve un número entero que representa el día de la semana.

WeekdayName (Función)

Devuelve una cadena que indica el día de la semana especificado.

Year (Función)

Devuelve un número entero que representa el año.

Clear (Método)

Borra todos los valores de propiedad del objeto Err.

Execute (Método)

Ejecuta una búsqueda de expresión regular en una cadena especificada.

Raise (Método)

Genera un error en tiempo de ejecución.

Replace (Método)

Reemplaza el texto encontrado en una búsqueda de expresión regular.

Test (Método)

Ejecuta una búsqueda de expresión regular en una cadena especificada.

Class (Objeto)

Proporciona acceso a los eventos de una clase creada.

Dictionary (Objeto)

Objeto que almacena pares de elemento y clave de datos.

Err (Objeto)

Contiene la información acerca de los errores en tiempo de ejecución.

FileSystemObject (Objeto)

Proporciona acceso al sistema de archivos de un equipo.

Match (Objeto)

Proporciona acceso a las propiedades de sólo lectura de una coincidencia de expresión regular.

Matches (Colección)

Colección de objetos Match de expresión regular.

RegExp (Objeto)

Proporciona compatibilidad con expresiones regulares simples.

Suma (+) (Operador)

Suma dos números.

And (Operador)

Realiza una conjunción lógica de dos expresiones.

Asignación (=)(Operador)

Asigna un valor a una variable o propiedad.

Concatenación (&)(Operador)

Fuerza la concatenación de cadenas de dos expresiones.

División (/) (Operador)

Divide dos números y devuelve un resultado de punto flotante.

Eqv (Operador)

Realiza una equivalencia lógica de dos expresiones.

Exponenciación (^) (Operador)

Eleva un número a la potencia de un exponente.

Imp (Operador)

Realiza una implicación lógica de dos expresiones.

División entera (\) (Operador)

Divide dos números y devuelve un resultado entero.

Is (Operador)

Compara las variables de referencia de dos objetos.

Mod (Operador)

Divide dos números y devuelve sólo el resto.

Multiplicación (*) (Operador)

Multiplica dos números.

Negación (-)(Operador)

Indica el valor negativo de una expresión numérica.

Not (Operador)

Realiza la negación lógica de una expresión.

Precedencia de operadores

Lista que muestra el orden de precedencia para diversos operadores utilizados en VBScript.

Or (Operador)

Realiza una disyunción lógica de dos expresiones.

(12)

numérica.

Xor (Operador)

Realiza una exclusión lógica de dos expresiones.

Description (Propiedad) Devuelve o establece una cadena descriptiva asociada con un error.

FirstIndex (Propiedad)

Devuelve la posición en una cadena de búsqueda donde ocurre una coincidencia.

Global (Propiedad)

Establece o devuelve un valor booleano.

HelpContext (Propiedad)

Establece o devuelve un Id. de contexto para un tema en un archivo de Ayuda.

HelpFile (Propiedad)

Establece o devuelve una ruta completa a un archivo de Ayuda

IgnoreCase (Propiedad)

Establece o devuelve un valor booleano que indica si una búsqueda de patrón distingue las mayúsculas de las minúsculas.

Length (Propiedad)

Devuelve la longitud de una coincidencia encontrada en una cadena de búsqueda.

Number (Propiedad)

Devuelve o establece un valor numérico que especifica un error.

Pattern (Propiedad)

Establece o devuelve el patrón de expresión regular que se busca.

Source (Propiedad)

Devuelve o establece el nombre del objeto o aplicación que generó originalmente el error.

Value (Propiedad)

Devuelve el valor o texto de una coincidencia encontrada en una cadena de búsqueda.

Call (Instrucción)

Traspasa el control a un procedimiento Sub o Function.

Class (Instrucción)

Declara el nombre de una clase.

Const (Instrucción)

Declara constantes para utilizar en lugar de los valores literales.

Dim (Instrucción)

Declara variables y asigna espacio de almacenamiento.

Do...Loop (Instrucción)

Repite un bloque de instrucciones mientras una condición sea True o hasta que una condición se vuelva True.

Erase (Instrucción)

Vuelve a inicializar los elementos de matrices de tamaño fijo y anula la asignación del espacio de almacenamiento de la matriz dinámica.

Execute (Instrucción)

Ejecuta una o más instrucciones especificadas.

Exit (Instrucción)

Sale de un bloque de código Do...Loop, For...Next, Function o Sub.

For...Next (Instrucción)

Repite un grupo de instrucciones un número de veces especificado.

For Each...Next (Instrucción)

Repite un grupo de instrucciones para cada elemento en una matriz o colección.

Function (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Function.

If...Then...Else (Instrucción)

Ejecuta de forma condicional un grupo de instrucciones, según el valor de una expresión.

On Error (Instrucción)

Habilita el control de errores.

Option Explicit (Instrucción)

Fuerza la declaración explicita de todas las variables en una secuencia de comandos.

Private (Instrucción)

Declara las variables privadas y asigna el espacio de almacenamiento.

PropertyGet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que obtiene (devuelve) el valor de una propiedad.

PropertyLet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que asigna el valor de una propiedad.

PropertySet (Instrucción)

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento

Property que establece una referencia a un objeto.

Public (Instrucción)

Declara variables públicas y asigna espacio de almacenamiento.

Randomize (Instrucción)

Inicializa el generador de números aleatorios.

ReDim (Instrucción)

Declara variables de matriz dinámica y asigna o vuelve a asignar espacio de almacenamiento en el nivel de procedimiento.

Rem (Instrucción)

Incluye observaciones explicatorias en un programa.

Select Case (Instrucción)

Ejecuta uno de entre varios grupos de instrucciones, según el valor de una expresión.

Set (Instrucción)

Asigna una referencia de objeto a una variable o propiedad.

(13)

While...Wend (Instrucción)

Ejecuta una serie de instrucciones mientras una condición dada sea True.

With (Instrucción)

Ejecuta una serie de instrucciones en un objeto único.

FUNCIONES

FUNCIONES

FUNCIONES

FUNCIONES

Función Abs

Descripción

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.

Comentarios

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

Descripción

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.

Comentarios

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

(14)

B = A(2) ' B es ahora 30.

Nota Una variable que no está declarada como matriz puede contener una matriz. Aunque una variable Variant que contiene una matriz es, conceptualmente, diferente a una variable de matriz que contiene elementos Variant, el acceso a los elementos de la matriz es igual.

Función Asc

Función Asc

Función Asc

Función Asc

Descripción

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.

Comentarios

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.

Nota La función AscB se usa con los datos de bytes contenidos en una cadena. En lugar de devolver el código de carácter para el primer carácter, AscB devuelve el primer byte. AscW se proporciona para plataformas de 32 bits que usan caracteres Unicode. Esta función devuelve el código de carácter Unicode, evitando así la conversión de Unicode a ANSI.

Función Atn

Función Atn

Función Atn

Función Atn

Descripción

Devuelve el arcotangente de un número.

Sintaxis

Atn(número)

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

Comentarios

La función Atn recibe el radio de dos lados de un triángulo recto (número) y devuelve el ángulo

correspondiente en radianes. El radio es la longitud del lado opuesto al ángulo, dividido por la longitud del lado adyacente al ángulo. El intervalo del resultado varía entre -pi/2 y pi/2 radianes.

Para convertir grados en radianes, multiplique los grados por pi/180. Para convertir radianes en grados, multiplique los radianes por 180/pi.

El siguiente ejemplo usa Atn para calcular el valor de pi: Dim pi

(15)

Nota Atn es la función trigonométrica inversa de Tan, que recibe un ángulo como argumento y devuelve el radio (proporción) de dos lados de un triángulo recto. No confunda Atn con la cotangente, que es el inverso simple de una tangente (1/tangente).

Función CBool

Función CBool

Función CBool

Función CBool

Descripción

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

Sintaxis

CBool(expresión)

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

Comentarios

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

Función CByte

Función CByte

Función CByte

Descripción

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.

Comentarios

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.

Use la función CByte para proporcionar conversiones que se adapten a los formatos internacionales desde cualquier tipo de datos al subtipo Byte. Por ejemplo, distintos separadores decimales se reconocen

correctamente según la configuración regional de su sistema, al igual que los distintos separadores de unidades de mil.

(16)

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

Función CCur

Función CCur

Función CCur

Descripción

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.

Comentarios

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 CCur para forzar aritmética de moneda en casos en los que normalmente se usaría aritmética entera.

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 regional 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).

Función CDate

Función CDate

Función CDate

Función CDate

Descripción

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.

Comentarios

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.

(17)

CDate reconoce los formatos de fecha según la configuración regional del sistema. No se puede

determinar el orden correcto de día, mes y año si éstos se proporcionan en un formato que no coincida con los valores de configuración reconocidos. Además, no se reconoce un formato de fecha largo si también contiene la cadena día-de-la-semana.

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

Función CDbl

Función CDbl

Función CDbl

Descripción

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.

Comentarios

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.

Use la función CDbl para proporcionar conversiones internacionales estándar desde cualquier tipo de datos al subtipo Double. Por ejemplo, distintos separadores de decimales y de miles se reconocen correctamente según la configuración regional de su sistema.

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(234.4567).

MiDoble = CDbl(MiMoneda * 8.2 * 0.01) ' Convierte el resultado en Double(19.2254576).

Función Chr

Función Chr

Función Chr

Función Chr

Descripción

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

Sintaxis

Chr(códigodecarácter)

(18)

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.

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 %.

Nota

La función ChrB se usa con los datos de byte contenidos en una cadena. En lugar de devolver un

carácter, que puede ser de uno o dos bytes, ChrB siempre devuelve un byte simple. ChrW se

proporciona para plataformas de 32 bits que usan caracteres Unicode. Su argumento es un código de carácter Unicode, que evita que la conversión des ANSI a Unicode.

Función CInt

Función CInt

Función CInt

Función CInt

Descripción

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.

Comentarios

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.

Use la función CInt para proporcionar conversiones internacionales estándar desde cualquier tipo de datos al subtipo Integer. Por ejemplo, distintos separadores de decimales y de miles se reconocen correctamente según la configuración regional de su sistema.

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.

Nota

CInt es distinta a las funciones Fix y de Int, que truncan, en lugar de redondear, la parte

fraccionaria de un número. Cuando la parte fraccionaria es exactamente igual a 0,5, la función CInt siempre redondea el número al siguiente número par. Por ejemplo, 0,5 se redondea a 0 y 1,5 se redondea a 2.

Función CLng

Función CLng

Función CLng

Función CLng

Descripción

(19)

Sintaxis

CLng(expresión)

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

Comentarios

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.

Use la función CLng para proporcionar conversiones internacionales estándar desde cualquier tipo de datos al subtipo Long. Por ejemplo, distintos separadores decimales o de miles se reconoce

correctamente según la configuración regional de su sistema.

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 son de tipo Double.

MiLong1 = CLng(MiVal1) ' MiLong1 contiene 25427.

MiLong2 = CLng(MiVal2) ' MiLong2 contiene 25428.

Nota

CInt es distinta a las funciones Fix y de Int, que truncan, en lugar de redondear, la parte

fraccionaria de un número. Cuando la parte fraccionaria es exactamente igual a 0,5, la función CInt siempre redondea el número al siguiente número par. Por ejemplo, 0,5 se redondea a 0 y 1,5 se redondea a 2.

Función Cos

Función Cos

Función Cos

Función Cos

Descripción

Devuelve el coseno de un ángulo.

Sintaxis

Cos(número)

El argumento número puede ser cualquier expresión numérica válida que expresa un ángulo en radianes.

Comentarios

La función Cos recibe un ángulo y devuelve el radio de dos lados de un triángulo rectángulo. El radio es la longitud del lado adyacente al ángulo dividido por la longitud de la hipotenusa. El resultado varía entre -1 y 1.

Para convertir grados en radianes, multiplique los grados por pi/180. Para convertir radianes en grados, multiplique los radianes por 180/pi.

El siguiente ejemplo usa la función Cos para devolver el coseno de un ángulo: Dim MiAngulo, MiSecante

MiAngulo = 1.3 ' Define el ángulo en radianes.

Referencias

Documento similar