Monografias.com > Computación > Software
Descargar Imprimir Comentar Ver trabajos relacionados

Manual de VBA (Visual Basic for Applications)




Enviado por Felipe Ordenes



    1
    INTRODUCCION

    VBA (Visual Basic for Applications) es un lenguaje de
    programación que permite crear macros, es decir, un
    conjunto de instrucciones de código que permiten realizar
    una tarea determinada. Excel 2007 trae incorporado un editor de
    VBA, por lo que las macros se programan dentro del mismo programa
    Excel.

    Las macros sirven para:

    – Automatizar procesos.

    – Crear funciones.

    – Crear comandos, complementos y
    menús.

    – Crear aplicaciones.

    Cuando se habla de macros se habla de Objetos,
    Propiedades y Métodos (OPM). Estos son los 3 conceptos
    generales más importantes que se deben conocer a la hora
    de programar macros.

    Objetos: Corresponden a los elementos mismos, tales como
    una hoja, un libro, el Excel mismo, una tabla, un rango, un
    gráfico, una columna, una fila, etc.

    Propiedades: Corresponden a las características
    de cada objeto, tales como el ancho, alto, color, etc.

    Métodos: Corresponden a las acciones que se
    pueden ejercer sobre los objetos, tales como abrir, cerrar,
    ejecutar, activar, mover, copiar, borrar, etc.

    1.1
    ELEMENTOS

    1.1.1 Ventana Proyecto

    La ventana proyecto contiene las carpetas
    donde se guardan las macros. La ventana proyecto es la
    siguiente.

    Monografias.com

    1.1.2 Ventana Propiedades

    La ventana propiedades contiene las
    propiedades del objeto seleccionado. La ventana propiedades es la
    siguiente.

    Monografias.com

    1.1.3 Ventana Código

    La ventana código contiene el código de la
    macro. La ventana código es la siguiente.

    Monografias.com

    1.1.4 Ventana Inmediato

    La ventana inmediato permite escribir, ejecutar y probar
    un código rápidamente, sin tener que armar toda la
    macro con la estructura, sino colocando un signo de
    interrogación previo a la línea de codigo. La
    ventana inmediato es la siguiente.

    Monografias.com

    1.1.5 Ventana Locales

    La ventana locales contiene todas las
    variables del objeto actual y los valores de estas cuando el
    código se esta ejecutando. La ventana locales es la
    siguiente.

    Monografias.com

    1.1.6 Ventana
    Inspección

    La ventana inspección contiene las
    expresiones a evaluar previamente definidas. La ventana
    inspección es la siguiente.

    Monografias.com

    2
    ESTRUCTURA

    2.1 VARIABLES

    2.1.1 Tipos de Variables

    Monografias.com

    2.1.2 Variables Locales

    Corresponden a variables declaradas dentro de una macro,
    y que solo pueden ser usadas dentro de esta. Cuando la macro
    termina de ejecutarse, la variable desaparece y se libera la
    memoria. La declaración de una variable local es la
    siguiente.

    Dim NombreVariable as
    TipoVariable

    2.1.3 Variables Públicas

    Corresponden a variables declaradas fuera de todas las
    macros, y que están disponibles para todas. La
    declaración de una variable pública es la
    siguiente.

    Public NombreVariable as
    TipoVariable

    2.1.4 Variables Estáticas

    Corresponden a variables declaradas dentro de una macro,
    y que conservan su valor mientras el módulo, módulo
    de clase o userform estén en uso o abiertos. La
    declaración de una variable estática es la
    siguiente.

    Static NombreVariable as
    TipoVariable

    2.1.5 Convertir Variables

    Función

    Tipo Devuelto

    Cbyte

    Byte

    CInt

    Integer

    CLong

    Long

    CCur

    Currency

    CSng

    Single

    CDbl

    Double

    CDec

    Decimal

    CDate

    Date

    CStr

    String

    CVar

    Variant

    CBool

    Boolean

    2.2
    SENTENCIAS

    2.2.1 Do Loop

    Do Loop se utiliza para repetir las mismas
    instrucciones varias veces hasta que una condición tenga
    lugar.

    Do [Instrucciones] Loop

    2.2.2 For Next

    For Next se utiliza para repetir un grupo
    de instrucciones un número especificado de
    veces.

    For [Contador] = [Principio] To [Fin] Step
    [Incremento] [Instrucciones]

    If [Condicion] then

    [Exit For] End If

    Next [Contador]

    2.2.3 For Each Next

    For Each Next se utiliza para repetir un
    grupo de instrucciones para cada elemento de una matriz o
    colección.

    For Each [Elemento] In [Grupo]
    [Instrucciones]

    If [Condicion] then

    [Exit For] End If

    Next [Elemento]

    2.2.4 While Wend

    While Wend se utiliza para repetir una
    serie de instrucciones mientras se cumpla una determinada
    condición, es decir, tenga el valor True.

    While [Condicion] [Intrucciones]
    Wend

    2.2.5 GoTo

    GoTo se utiliza para variar el sentido que
    debería tomar una macro, ya que cuando una macro llega a
    una línea que contiene dicha instrucción "salta" al
    lugar especificado en GoTo.

    GoTo [Linea] Linea:

    2.2.6 With End With

    With End With se utiliza para ejecutar una serie de
    instrucciones sobre un único objeto o sobre un tipo
    definido por el usuario. Permite realizar múltiples
    operaciones sobre el mismo objeto.

    With [Objeto] [Instrucciones] End
    With

    2.2.7 If Then

    If Then se utiliza para escoger entre 2 o
    más posibilidades, para decidir sobre que es lo que se
    quiere, entre una serie de alternativas.

    If [Condicion] Then

    [Instrucciones]

    ElseIf [CcondicionElseIf] Then

    [InstruccionesElseIf] Else
    [InstruccionesElse] End If

    2.2.8 Select Case

    Select Case se utiliza cuando las alternativas en una
    estructura de If Then son muchas. En tal caso conviene evitar el
    If Then y hacer uso de Select Case, que permite ejecutar uno de
    varios grupos de instrucciones, dependiendo del valor de una
    expresión.

    Select Case [Expresion-m] Case
    [Expresion-1]

    [Instrucciones-1]

    Case [Expresion-2]
    [Instrucciones-2]

    …..

    Case [Expresion-n]
    [Instrucciones-n]

    Case Else

    [InstruccionesElse] End Select

    2.2.9 DoEvents

    DoEvents se utiliza para ceder el control de la
    ejecución al sistema operativo, para que éste pueda
    procesar otros eventos. El control no se devuelve hasta que el
    sistema operativo haya terminado de procesar los eventos en cola
    y se hayan enviado todas las teclas de la cola
    SendKeys.

    DoEvents()

    2.2.10 On Error GoTo

    On Error GoTo se utiliza para controlar un error de
    macro en caso de existir. Permite indicar que en caso de existir
    un error haga un salto a otra línea donde se le indique
    cómo proceder.

    On Error GoTo CasoError

    CasoError:

    2.2.11 On Error Resume Next

    On Error Resume Next se utiliza para
    controlar un error de macro en caso de existir. Permite indicar
    que en caso de existir un error lo omita.

    3
    ARRAYS

    Un Array corresponde a una cadena de
    elementos. Cada elemento de un array tiene un número de
    índice que lo identifica como único.

    3.1 ARRAYS FIJOS

    Un array fijo corresponde a aquel que posee un
    número fijo de elementos. La declaración

    de un Array fijo de "n" elementos se hace de las
    siguientes formas.

    Dim NombreArray(0 to n) as
    TipoVariable

    Dim NombreArray(n) as
    TipoVariable

    3.2 ARRAYS VARIABLES

    Un array variable corresponde a aquel que
    puede modificarse el número de elementos. La
    declaración de un Array variable se hace de la siguiente
    forma.

    Dim NombreArray() as
    TipoVariable

    3.3 ARRAYS BIDIMENSIONALES

    Un array bidimensional corresponde a aquel que posee 2
    dimensiones, es decir, en vez de cadena corresponde a una matriz
    de elementos. La declaración de un Array bidimensional
    fijo de "n" y "m" elementos se hace de las siguientes
    formas.

    Dim NombreArray(1 to n, 1 to m) as
    TipoVariable

    Dim NombreArray(n, m) as
    TipoVariable

    3.4 FUNCIONES DE ARRAY

    3.4.1 Redim

    Redimensiona el Array borrando la
    información que tenia guardada. La función Redim se
    usa de la siguiente forma.

    Redim NombreArray(n)

    3.4.2 Redim Preserve

    Redimensiona el Array conservando la
    información que tenia guardada. La función
    Redim

    Preserve se usa de la siguiente
    forma.

    Redim Preserve
    NombreArray(n)

    3.4.3 LBound

    Devuelve el índice inferior del
    array. La función LBound se usa de la siguiente
    forma.

    LBound(NombreArray)

    3.4.4 UBound

    Devuelve el índice superior del
    array. La función UBound se usa de la siguiente
    forma.

    UBound(NombreArray)

    3.4.5 Join

    Devuelve un String que contiene todos los
    elementos del Array separados por un elemento separador. La
    función Join se usa de la siguiente forma.

    Join(NombreArray,
    "Separador")

    3.4.6 Split

    Devuelve un Array cuyos elementos
    corresponden a los que conforman un String separados por un
    elemento separador. La función Split se usa de la
    siguiente forma.

    Split(NombreArray,
    "Separador")

    3.4.7 Filter

    Devuelve un array filtrado según
    algún criterio de búsqueda, permitiendo incluir o
    excluir el texto de busqueda (True/False). La función
    Filter se usa de la siguiente forma.

    Filter(NombreArray, "TextoBusqueda",
    True/False)

    4
    USERFORM

    4.1 CUADRO DE
    HERRAMIENTAS

    Monografias.com

    Las opciones y sus funcionalidades son las
    siguientes.

    Monografias.comSeleccionar Objetos: Permite seleccionar
    controles insertos en el Userform.

    Monografias.comLabel: Permite insertar una
    etiqueta.

    Monografias.comTextbox: Permite insertar un cuadro de
    texto, en el cual se introducen datos.

    Monografias.comComboBox: Sirve para que un usuario elija una
    opción de una lista.

    Monografias.comListBox: Sirve para que un usuario
    rellene o elija varias opciones de una lista.

    Monografias.comCheckBox: Permite insertar una caja de
    checkeo.

    Monografias.comOptionButton: Permite insertar botones de
    opciones.

    Monografias.comToggleButton: Sirve para activar o
    desactivar alguna funcionalidad. Este botón adopta el modo
    "Encendido" / "Apagado".

    Monografias.comFrame: Sirve para agrupar elementos de un
    Userform (los elementos se deben ubicar dentro del
    Frame).

    Monografias.comCommandButton: Es un simple botón
    que nos permite ejecutar acciones.

    Monografias.comTabStrip: en un mismo Userform se pueden crear
    distintas secciones.

    Monografias.comMultiPage: en un mismo Userform se pueden crear
    distintas páginas.

    Monografias.comScrollBar: si tenemos una lista con
    muchos elementos el scrollbar nos permite
    navegarlos.

    Monografias.comSpinButton: permite aumentar o disminuir
    valores.

    Monografias.comImage: permite introducir imágenes en el
    Userform.

    Monografias.comRefEdit: permite hacer referencia a una celda
    de Excel.

    4.2 FUNCIONES DE USERFORM

    4.2.1 Load

    Carga el Userform para ser mostrado en
    pantalla. La función Load se usa de la siguiente
    forma.

    Load NombreUserForm

    5
    DECLARACIONES

    5.1 OPTION

    5.1.1 Option Explicit

    Obliga a declarar explícitamente todas las
    variables mediante las instrucciones Dim, Private, Public, ReDim
    o Static. Cuando no se usa, todas las variables no declaradas son
    Variant.

    5.1.2 Option Private Module

    Impide que las variables declaradas en el modulo sean
    utilizadas en otros archivos. La variables declaradas como
    publicas dentro del modulo si están disponibles en otros
    modulos del mismo archivo, pero no en modulos de otros
    archivos.

    5.1.3 Option Base 0

    Establece el 0 como el índice inferior de los
    Array declarados en el modulo. Esta opción viene por
    default, por lo que no es necesario declararla.

    5.1.4 Option Base 1

    Establece el 1 como el índice inferior de los
    Array declarados en el modulo.

    5.1.5 Option Compare Binary

    Especifica el método de comparación de
    Strings para un módulo. Esta opción viene por
    default, por lo que no es necesaria declararla. El ordenamiento
    de menor a mayor Binary es el siguiente.

    A < B < E < Z < a < b
    < e < z

    5.1.6 Option Compare Text

    Especifica el método de
    comparación de Strings para un módulo. El
    ordenamiento de menor a mayor Text es el siguiente.

    (A = a) <(=) <(B = b) <(E =
    e) <(=) <(Z = z) <(=)

    5.2 EVENTOS DE LIBROS

    Los eventos de libros corresponden a determinados
    sucesos propios de un libro, tales como abrirlo, guardarlo,
    cerrarlo, imprimirlo, etc. Las macros de eventos de libros se
    deben escribir en la carpeta ThisWorkbook de la ventana
    proyecto.

    En la primera lista desplegable de la ventana
    código se debe seleccionar la opción

    Workbook.

    En la segunda lista desplegable de la
    ventana código se debe seleccionar el evento de libro
    deseado.

    5.2.1 Activate

    Se ejecuta al activar el libro.

    5.2.2 AddinInstall

    Se ejecuta cuando el libro se instala como un
    complemento.

    5.2.3 AddinUninstall

    Se ejecuta cuando el libro se desinstala como un
    complemento.

    5.2.4 AfterXmlExport

    Se ejecuta después de guardar o exportar datos
    del libro a un archivo XML.

    5.2.5 AfterXmlImport

    Se ejecuta después de actualizar una
    conexión de datos XML o después de importar nuevos
    datos XML en el libro.

    5.2.6 BeforeClose

    Se ejecuta antes de cerrar el
    libro.

    5.2.7 BeforePrint

    Se ejecuta antes de imprimir el
    libro.

    5.2.8 BeforeSave

    Se ejecuta antes de guardar el
    libro.

    5.2.9 BeforeXmlExport

    Se ejecuta antes de guardar o exportar
    datos del libro a un archivo XML.

    5.2.10 BeforeXmlImport

    Se ejecuta antes de actualizar una
    conexión de datos XML o después de importar nuevos
    datos XML en el libro.

    5.2.11 Deactivate

    Se ejecuta cuando se desactiva el
    libro.

    5.2.12 NewSheet

    Se ejecuta cuando se crea una hoja en el
    libro.

    EL PRESENTE TEXTO ES SOLO UNA SELECCION DEL TRABAJO
    ORIGINAL.
    PARA CONSULTAR LA MONOGRAFIA COMPLETA SELECCIONAR LA OPCION
    DESCARGAR DEL MENU SUPERIOR.

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter