Click here to load reader

Unidad didáctica 11 VBA - Plataforma · PDF file 2010-09-14 · VBA 1 Unidad didáctica 11 VBA VBA (Visual Basic para Aplicaciones) es un lenguaje de programación creado por Microsoft

  • View
    17

  • Download
    0

Embed Size (px)

Text of Unidad didáctica 11 VBA - Plataforma · PDF file 2010-09-14 · VBA 1 Unidad...

  • VBA 1

    Unidad didáct ica 11

    VBA

    VBA (Visual Basic para Aplicaciones) es un lenguaje de programación creado por Microsoft para Office que incluye su propio entorno de desarrollo.

    Esto no es un curso de Visual Basic. Se trata de comprender la utilización de este

    lenguaje para generar diferentes procedimientos que asignaremos a eventos de objetos de nuestra base de datos.

    Al finalizar el estudio de estas lecciones serás capaz de:

    Conocer el entorno de desarrollo de Visual Basic.

    Definir variables, expresiones y objetos.

    Establecer propiedades a distintos objetos de Access.

  • VBA 2

    Lección 1

    Entorno de desarrol lo

    Es el lugar en el que generamos los diferentes procedimientos y funciones que afectarán a los diferentes objetos de nuestra base de datos.

    Podemos acceder a él seleccionando la ficha Herramientas de bases de datos, grupo Macro, opción Visual Basic.

  • VBA 3

    La ventana de código

    En ella podemos escribir y editar el código de Visual Basic.

    Selector de “Objetos”

    Muestra el nombre del objeto seleccionado. Si hacemos clic en el

    “desplegable” se mostrarán todos los controles situados en el formulario.

    Selector de “Procedimientos”

    Muestra todos los eventos relacionados con el control seleccionado.

    Los botones que se muestran en la esquina inferior derecha de la ventana

    permitirán mostrar todos los procedimientos del módulo o únicamente el procedimiento seleccionado.

    Ver procedimiento / Ver módulo completo

    Explorador del proyecto

    Muestra una lista de todos los proyectos y de los elementos de cada uno de ellos.

  • VBA 4

    Ver código

    Muestra la ventana de código asociada al elemento seleccionado.

    Ver objeto

    Muestra la ventana del objeto correspondiente al elemento seleccionado.

    Alternar carpetas

    Permite ocultar y mostrar las carpetas y los elementos que contienen éstas.

    Propiedades

    Muestra los valores de las propiedades del elemento seleccionado.

    Cuadro de objetos

    Es el desplegable que se encuentra en la parte superior y, en él, aparecen

    todos los objetos del elemento seleccionado en el explorador de proyectos.

    Lista alfabética

    Muestra las propiedades del objeto ordenadas en orden alfabético.

    Lista por categorías

    Muestra las propiedades del objeto seleccionado agrupadas por categorías.

  • VBA 5

    Ventana "inmediato"

    Puedes mostrarla desde la opción “Ver/Ventana inmediato” y permite probar la

    ejecución de instrucciones escribiendo la línea de código y pulsando la tecla “Enter”.

    Barra de herramientas estándar

    Esta barra incluye los típicos botones de cortar, copiar, pegar y buscar. La

    posibilidad de deshacer y rehacer. Desde ella podemos mostrar u ocultar diferentes

    paneles como el explorador de proyectos, propiedades y examinador de objetos.

    Podemos crear nuevos procedimientos y guardarlos. También permite ejecutar el

    procedimiento, interrumpir su ejecución y restablecerla.

  • VBA 6

    Lección 2

    Procedimientos y func iones

    Son sucesiones de instrucciones que realizan diferentes tareas o calculan valores. Podemos clasificar los procedimientos en dos tipos…

    Procedimientos Sub()

    Realizan una serie de procesos pero no devuelven un valor. Las instrucciones van

    comprendidas entre las expresiones Sub() y End Sub.

    Proced01

    Private Sub Comando0_Click()

    MsgBox "Bienvenido"

    End Sub

    Fíjate que la ejecución del procedimiento se ha asignado automáticamente al

    evento “Al hacer clic” del botón.

    Resultado

    Proced02

    Tenemos un formulario con un botón de comando al que le hemos

    asignado la ejecución del siguiente procedimiento al hacer clic en él.

  • VBA 7

    Si quieres realizar el ejemplo…

    Crea un formulario en vista “Diseño”.

    Inserta un control del tipo “Botón de comando” (si quieres desactiva el “Asistente

    para controles” puesto que la acción se la asignaremos de forma manual).

    Pulsa el botón derecho del ratón sobre el “Botón de comando” insertado y

    selecciona la opción “Generar evento”. En la ventana que aparece, elige “Generador

    de código” y pulsa el botón “Aceptar”. Entrarás en el “Entorno de desarrollo” en el

    que ya aparece el procedimiento asignado al evento “Al hacer clic” del botón. En la

    posición en la que queda situado el cursor escribe la instrucción del ejemplo:

    MsgBox "Bienvenido"

    Cierra la ventana del “Entorno de desarrollo” y prueba.

    El manejo del “Entorno de desarrollo” y sus diferentes paneles y componentes será

    comentado en posteriores lecciones.

    Procedimientos Function()

    Este tipo de procedimientos se denominan genéricamente funciones y, devuelven

    el valor resultante de una serie de cálculos o procesos. Las instrucciones estarán comprendidas entre las expresiones Function y End Function.

    Funcion01

    Tenemos un formulario con tres cuadros de texto (Precio,

    Cantidad e Importe) y un botón de comando al que le asignaremos la ejecución de una función que calcule el importe.

  • VBA 8

    La función sería:

    Function CalculaImporte()

    Importe.Value = Cantidad.Value * Precio.Value

    End Function

    Así como los procedimientos van directamente asignados a eventos, las funciones

    serán creadas y, después asignadas al evento en el que queramos que se ejecuten.

    Observa que, a la función le damos un nombre para poder hacer referencia a ella

    en el momento que decidamos ejecutarla. Dicho nombre no podrá contener

    espacios en blanco ni caracteres extraños. A continuación del nombre abriremos y

    cerraremos paréntesis (en algunos casos escribiremos una serie de argumentos entre ellos).

    Si quieres realizar el ejemplo…

    Crea un formulario en vista “Diseño”.

    Inserta tres controles del tipo “Cuadro de texto” y un botón de comando (a los

    cuadros de texto les he puesto como nombre: Precio, Cantidad e Importe).

    Accede al “Entorno de desarrollo” pulsando las teclas “Alt+F11” y escribe lo siguiente:

    Function CalculaImporte()

    Importe.Value = Cantidad.Value * Precio.Value

    End Function

    De momento no te preocupes por el contenido de la expresión (aunque, en este

    caso es muy sencillo de entender). Ya comentaremos los conceptos de objeto, propiedad y método en próximas lecciones.

    Una vez creada la función, cierra la ventana del “Entorno de desarrollo” y, vamos a

    decidir el momento en el que se ejecutará. Pulsa el botón derecho del ratón sobre

    el “Botón de comando” insertado en el formulario y selecciona la opción

    “Propiedades”. Sitúate en el apartado “Eventos” y, en el evento “Al hacer clic”, escribe el nombre de la función precedido del signo “=”.

    =CalculaImporte()

    ¡No te preocupes por las mayúsculas y minúsculas, a Access le da igual!

    Ahora prueba a introducir el precio y la cantidad y pulsa el botón “Calcular” para comprobar que está todo correcto.

  • VBA 9

    Lección 3

    Var iab les

    Podemos definir una variable como un contenedor en el que almacenamos cierta información para utilizarla posteriormente.

    Proced01

    Private Sub Comando0_Click()

    dato = "Carlos"

    MsgBox "Hola " + dato + ", Bienvenido"

    End Sub

    Hemos creado una variable a la que le hemos puesto como nombre “dato” y le

    hemos asignado el valor “Carlos”. A continuación mostramos un cuadro de mensaje

    en el que unimos texto y el contenido de la variable dato mediante el signo “+”.

    Resultado

    Variables01

    Tenemos un formulario con un “Botón de comando” al que le hemos asignado la ejecución del siguiente procedimiento…

  • VBA 10

    Nombre de variable

    El nombre de la variable tiene que cumplir las siguientes condiciones…

    No se pueden usar caracteres especiales de Access, como el punto, los paréntesis, la barra vertical o caracteres utilizados como operadores (+, -, /, *, ).

    Debe empezar por una letra o por el carácter de subrayado “_”.

    No puede contener espacios en blanco.

    No se pueden utilizar palabras reservadas de VBA (for, if, integer…)

    Puede tener hasta 255 caracteres.

    No puede haber dos variables con el mismo nombre dentro del mismo procedimiento.

    Para definir las variables que utilizaremos en el procedimiento utilizaremos la instrucción Dim, seguida del nombre de la variable y de su tipo de datos.

    Tipos de datos

    Al igual que en los campos, el tipo de datos permite establecer la clase de

    información que se almacenará en la variable.

    Numéricos

    Existen dos grupos

    Números enteros. Permite almacenar valores enteros. Sus tipos son:

    Tipo Tamaño Valor inferior Valor superior

    Byte 1 byt

Search related