452

Click here to load reader

Programacion Acces

Embed Size (px)

DESCRIPTION

++++

Citation preview

  • Programacin con Microsoft Access 2000. Macros y Visual Basic

    para aplicaciones r"t A Evan Callahan

    Traduccin LUIS HERNNDEZ YEZ

    Profesor Titular de Lenguajes y Sistemas Informticos Departamento de Sistemas Informticos y Programacin

    Universidad Complutense de Madrid

    Revisin tcnica ANTONIO VAQUERO SNCHEZ

    Catedrtico de Lenguajes y Sistemas Informticos ( Departamento de Sistemas Informticos y Programacin

    Universidad Complutense de Madrid

    MADRID BUENOS AIRES CARACAS GUATEMALA LISBOA MXICO NUEVA YORK . PANAM . SAN JUAN. SANTAF DE BOGOT . SANTIAGO. SO PAULO

    AUCKLAND HAMBURGO LONDRES MILN MONTREAL NUEVA DELHl PAR& SAN FRANCISCO SIDNEY SINGAPUR ST. LOUIS TOKIO TORONTO

  • PROGRAMACI~N CON MICROSOFT ACCESS 2000. Macros y Visual Basic para aplicaciones

    No est permitida la reproduccin total o parcial de este libro, ni su tratamiento infor- mtico, ni la transmisin de ninguna forma o por cualquier medio, ya sea electrnico, mecnico, por fotocopia, por registro u otros mtodos, sin el permiso previo y por escri- to de los titulares del Copyright.

    DERECHOS RESERVADOS O 1999, respecto a la primera edicin en espaol, por *

    McGRAW-HILLDNTERAMERICANA DE ESPANA, S. A. U. Edificio Valrealty, 1." planta Basauri, 17 28023 Aravaca (Madrid)

    Traducido de la primera edicin en ingls de Microsoft Access 2000. Visual Basic for Applications Fundamentals ISBN: 0-7356-0592-0

    Copyright O 1999, por Evan Callahan Copyright de la edicin original en lengua inglesa O 1999, por Microsoft Corporation

    ActiveX, FrontPage, Internet Explorer logo, Outlook, Microsoft, Microsoft Press, Visual Basic, Windows, and Windows NT are either registered trademarks or trade- marks of Microsoft Corporation in the United States andor other countries. Other pro- duct and company names mentioned herein may be the trademarks of their respective owners.

    Publicado por McGraw-HilllInteramericana de Espaa por acuerdo con el editor origi- nal, Microsoft Corporation. Redmond. Washington. EE. UU.

    ISBN: 84-48 1-25 16-9 Depsito legal: M. 24.478-2001

    Editora: Mercedes Franco Calvo Compuesto en Evolution, S. L. Impreso en Lavel, S. A.

    IMPRESO EN ESPANA - PRINTED IN SPAIN

  • Evan Callahan es propietario de Callahan Software Solutions, una firma consultora especializada en Microsoft Access. Trabaj para Microsoft Corporation desde 1989 hasta 1995, donde cre documentacin, Ayuda en lnea y aplicaciones de ejemplo para Microsoft Access y Visual Basic. Tiene un B.A. en Filosofa y Literatura comparativa por la Universidad de Washington. Naci y creci en Seattle, Washington y, en su tiempo libre, disfruta esquiando y patinando, componiendo msica y estando cerca de su familia y amigos. Otros libros publicados por Evan Callahan, dentro de la serie Microsoft Press, son Microsoft Access 97 Visual Basic Paso a paso y The Power of lntranets: Creating Workgroup Web Sites with Microsoft Ofice 2000 y FrontPage 2000.

  • Contenido

    Agradecimientos xiii -E

    Introduccin xv

    Parte l. Automatizacin de tareas de base de datos i

    Captulo 1. Cmo empezar rpidamente mediante los asistentes 3 Uso de los asistentes para el desarrollo de aplicaciones 4 Creacin de una base de datos con el Asistente para bases de datos 5

    Qu ms ha creado el Asistente? 8 i Introduccin de informacin en la base de datos 10

    Uso de datos existentes con una base de datos nueva 11 Inclusin de un objeto en nuestra aplicacin 14 Inclusin de un botn de orden en un formulario 18

    Creacin de otros botones de orden 22 Resumen del captulo 24 Avance del siguiente captulo 25

    Captulo 2. . Personalizacin de una aplicacin con Visual Basic 27 Personalizacin de un botn de orden 28 'i

    Visualizacin del cdigo Visual Basic que hay detrs de la aplicacin 30

    Modificacin de un botn de orden creado con el asistente 34 Aplicacin por omisin del modo slo-lectura a un formulario 40 Creacin de un botn de orden sin utilizar el asistente 42 Creacin de procedimientos de evento para eventos de formulario 49

  • Visualizacin de un mensaje para el usuario 52 Resumen del captulo 55 Avance del siguiente captulo 56

    Captulo 3. Localizacin y filtrado de registros en un formulario 57 Creacin de un cuadro combinado para localizar registros 58 Filtrado de datos 67

    Respuesta a eventos de filtrado 68 Uso de la instruccin If.. .Then para comprobar una condicin 70 Comprensin de las propiedades de filtrado 7 1 Uso de la ventana Inmediato para ver y asignar propiedades 72 Creacin de un grupo de opciones para filtrar datos 75

    Resumen del captulo 84 Avance del siguiente captulo 85

    Captulo 4. Respuesta a eventos de entrada de datos 87 Funcionamiento de los eventos de formulario y control 88 Acciones realizadas mientras el usuario se desplaza por el formulario 90 Acciones realizadas mientras el usuario modifica datos 94

    Asignacin auto-mgica del valor de un control 94 Respuesta a los eventos de teclado 98 Validacin de datos 101

    Validacin de datos mediante un procedimiento de evento 105 Formulacin de una pregunta al usuario 109

    Resumen del captulo 1 12 Avance del siguiente captulo 1 13

    Parte 11. Programacin en Visual Basic

    Captulo 5. Escriba sus propias funciones 117 Funcionamiento de los mdulos y los procedimientos 118

    Por qu crear procedimientos generales? 118 Mdulos estndar y mdulos de formulario 119

    Creacin de procedimientos generales en un mdulo estndar 120 Uso de la seccin de declaraciones 121 Declaracin de valores constantes 122

    t Creacin de un procedimiento Sub 123

  • Inclusin de argumentos en un procedimiento 126 Creacin de una funcin 127

    Uso de procedimientos generales en un formulario 131 Creacin de funciones generales en un mdulo de formulano 134 Tantas opciones y tan pocas reglas 140 Resumen del captulo 142 Avance del siguiente captulo 143

    Leccin 6. Seguimiento y depuracin del cdigo 145 Seguimiento del cdigo lnea a lnea 146

    Colocacin de un punto de interrupcin que detenga la ejecucin * del cdigo 147

    Paso de un procedimiento a otro 15 1 Seguimiento de las variables y otros valores 154

    Localizacin y correccin de errores en el cdigo 159 Cmo indicar a Visual Basic que verifique el cdigo 164

    Resumen del captulo 171 Avance del siguiente captulo 172

    Captulo 7. Respuesta a errores y condiciones no esperadas 173 Sustitucin de los mensajes de error estndar 174 . Respuesta al evento Error 175

    Visualizacin de nuestro propio mensaje para un error especfico 178 Respuesta a un error de cuadro combinado 181 Creacin de rutinas para el manejo de errores 186

    Manejo de errores ocurridos cuando la aplicacin es de slo-lectura 187 Anticipacin a otros problemas que causan errores 192

    Resumen del captulo 195 Avance del siguiente captulo 196

    Parte III. Creacin de una aplicacin personalizada

    Captulo 8. Obtencin de informacin en un cuadro de dilogo 199 Creacin de una aplicacin desde el principio 200 Uso de cuadros de dilogo en las aplicaciones 202 Creacin de un cuadro de dilogo para ir a un registro especfico 204 Filtrado de datos en un informe 223

  • Resumen del captulo 233 Avance del siguiente captulo 234

    Captulo 9. Exploracin de la aplicacin 235 Colaboracin entre formularios 236 Visualizacin de registros relacionados en un formulario emergente 238 Apertura de un formulario para aadir registros relacionados 248 Resumen del captulo 257 Avance del siguiente captulo 259

    Captulo 10. Creacin de mens y barras de herramientas personalizados 261 Uso de mens y barras de herramientas en la interfaz de usuario 262 Creacin de una barra de mens personalizada 263 Personalizacin de barras de herramientas 275

    Creacin de una barra de herramientas propia para.el formulario Suscriptores 276

    Creacin de botones de barra de herramientas para ejecutar cdigo Visual Basic 28 1

    Resumen del captulo 285 Avance del siguiente captulo 286

    Captulo 11. - Toques finales a la aplicacin 287 Control del inicio de la aplicacin 288

    Inclusin de un formulario inicial en la aplicacin 289 Detalles del formulario Panel Principal de la aplicacin 290

    Personali~acin del aspecto de la aplicacin 294 Sustitucin de la pantalla de presentacin de Access 297 t Preparacin para distribuir la aplicacin a los usuarios 298

    Resumen del captulo 303 r Avance del siguiente captulo 305

    Parte IV. Trabajo con datos y objetos Captulo 12. Exploracin de objetos y colecciones 309

    Presentacin de la aplicacin Seguimiento de problemas 310 Cmo funcionan los objetos y las colecciones 3 13

  • Referencia a objetos y colecciones 320 Uso de la instruccin For Each con una coleccin 323 Uso de un cuadro de lista de seleccin mltiple 325 Trabajo directo con objetos de acceso a datos 328 Localizacin y modificacin de datos en un Recordset 331 Creacin y ejecucin de una consulta de accin 337 Resumen del captulo 342 Avance del siguiente captulo 344

    Captulo 13. Personalizacin de informes con Visual Basic 345 Utilizacin de las caractersticas estndar de los informes 346 Respuesta a eventos de informe 348

    Personalizacin de informes asignando propiedades en ejecucin 349 Modificacin del diseo del informe desde el cdigo 352

    Clculo de totales mientras se imprime el informe 355 Resumen del captulo 363 Avance del siguiente captulo 364

    Captulo 14. Comparticin de datos con otras aplicaciones 365 Uso de objetos de Automatizacin 366 Envo de rdenes a Microsoft Word 367 Obtencin de informacin de otra aplicacin 376 Trabajo con carpetas de Microsoft Outlook 379 Resumen del captulo 385 Avance del siguiente captulo 386

    Captulo 15. Conexin a lnternet 387 Uso de hipervnculos 388

    Creacin de controles de hipervnculo en un formulario 390 Almacenamiento de hipervnculos en una tabla 391 Seguimiento de hipervnculos desde Visual Basic 395 Modificacin de hipervnculos mediante Visual Basic 400

    Creacin de pginas Web para la aplicacin 405 Creacin de una pgina de acceso a datos para la revisin de datos 406 Insercin de secuencias de comandos en las pginas de acceso

    adatos 415 Resumen del captulo 423 Por dnde seguir? 425

    lndice analtico 427

  • Introduccin

    Este libro ensea a crear aplicaciones de base de datos en Microsoft Access 2000. Si ya ha usado Microsoft Access y est preparado para pasar a progra- mar en Microsoft Visual Basic, ste libro es para usted. Access ha revolucionado el mundo de las bases de datos gracias a su facili- dad de uso para almacenar y mostrar informacin. Como podr ver, proba- blemente es la herramienta ms productiva para crear aplicaciones de base de datos. Access utiliza un potente lenguaje de programacin, Visual Basic -el mismo que utilizan otras aplicaciones de Microsoft Office y que se pue- de utilizar por separado para desarrollar aplicaciones para Microsoft Win- dows o para la Web. Mediante las tcnicas de programacin que aprender en este libro podr sacar ms partido a Access y crear en poco tiempo sus propias soluciones personalizadas. An ms, si trabaja con bases de datos que utilizan otras personas, aprender a crear una interfaz de usuario com- pleta para ayudarles a realizar fcilmente su trabajo. Programacin con Microsoft Access 2000. Macros y Visual Basic para apli- caciones le ir presentando las tareas una por una y le guiar con instruccio- nes claras y frecuentes imgenes de lo que, en cada momento, debe ir apare- ciendo en la pantalla. Cada uno de los captulos propondr un problema que ir resolviendo y le ayudar a familiarizarse con un rea concreta de Access o Visual Basic.

    Importante Este libro est diseado para ser utilizado con Microsoft Ac- cess 2000 (versin 9.0) o Microsoft Office Profesional, Premium o Desarro- lladores para los sistemas operativos Windows 95, Windows 98, Windows NT y Windows 2000. Para conocer cul es el software que se est utilizan- do, puede comprobar el paquete del producto o puede iniciar el software, ac- tivar el men Ayuda y elegir Acerca de Microsoft Access. Si su software no es compatible con este libro, probablemente est disponible un libro de la se- rie Paso a paso o Programacin para su software.

  • Para encontrar el mejor punto de partida en este libro Este libro est pensado tanto para los usuarios de Access que estn apren- diendo a programar por primera vez como para los programadores que ha- yan utilizado otros sistemas de programacin, como dBASE o FoxPro. Po- dr sacar un mayor provecho de este libro si ya est familiarizado con las capacidades bsicas de Access, como, por ejemplo, el diseo y la utilizacin de formularios. Los pasos de este libro podr completarlos aunque sea un re- cin llegado a Access, pero para crear sus propias bases de datos necesitar conocimientos que no se cubren en este libro. El libro est dividido en cuatro partes. Parte 1: Automatizacin de tareas de base de datos comienza con solu- ciones directas y prcticas para personalizar bases de datos de Access. Tam- bin presenta Visual Basic para Aplicaciones -el lenguaje de programacin de Access- y ensea los conceptos bsicos que ir necesitando. En esta par- te, utilizar asistentes de Access y cdigo sencillo para crear y personalizar una base de datos de administracin de contactos. Parte 11: Programacin en Visual Basic le ensear a utilizar las herra- mientas de programacin de Access para escribir y depurar cdigo Visual Basic. En esta parte, seguir utilizando la base de datos de administracin de contactos, a la que aadir nuevas caractersticas. Parte 111: Creacin de una aplicacin personalizada recorre, paso a paso, el proceso de creacin de una interfaz personalizada para una aplicacin de base de datos. En esta parte, trabajar con una base de datos nueva que gestiona suscrip- ciones a una revista y la prepara para distribuirla a los usuarios. Durante el pro- ceso crear cuadros de dilogo, conseguir que los formularios e informes tra- bajen paralelamente y aadir mens y barras de herramientas personalizados. Parte IV: Trabajo con datos y objetos le introducir en la estructura inter- na de Access. Aprender a tomar control directo sobre objetos como formu- larios, informes y bases de datos -as como a manipular objetos de otras apli- caciones, como Microsoft Word. En esta parte utilizar tcnicas avanzadas de programacin para aadir caractersticas a una aplicacin de seguimiento de problemas. Utilice las siguientes directrices para determinar el punto de partida ms apropiado en su caso. Si le resulta nuevo Access o la programacin con Visual Basic, siga estos pasos: 1. Instale los archivos de prcticas tal y como se describe en el apartado

    Instalacin y uso de los archivos de prcticas, ms adelante en esta in- troduccin.

  • 2. Familiarcese con las caractersticas bsicas de Access tomando como re- ferencia la ayuda interactiva u otra documentacin segn sus necesidades.

    3. Trabaje secuencialmente con los Captulos 1 a 7 donde aprender las ha- bilidades necesarias para desarrollar aplicaciones en Microsoft Access. (Aunque, si ya tiene experiencia con Access puede saltarse el Captulo 1 .) A continuacin, trabaje con los Captulos 8 a 15 segn le interese apren- der las tcnicas adicionales que en ellos se tratan.

    Si llega desde Visual Basic u otro producto de Microsoft que utiliza Visual Basic, siga estos pasos: 1. Instale los archivos de prcticas tal y como se describe en el apartado

    Instalacin y uso de los archivos de prcticas, ms adelante en esta in- troduccin.

    2. Trabaje secuencialmente con los Captulos 1, 3 y 4, saltndose el Cap- tulo 2, para aprender lo relativo al desarrollo de aplicaciones en Access. Sltese tambin los Captulos 5 a 7. A continuacin, trabaje con los Ca- ptulos 8 a 15 segn le interese aprender las tcnicas adicionales que en ellos se tratan.

    Si se est actualizando desde una versin anterior de Access, siga estos pasos: 1. Aprenda las nuevas caractersticas de esta versin del programa descritas

    en este libro leyendo el apartado siguiente, Nuevas caractersticas para el desarrollo de aplicaciones de Access 2000~.

    2 Instale los'archivos de prcticas tal y como se describe en el apartado Instalacin y uso de los archivos de prcticas, ms adelante en esta in- troduccin.

    3. Complete los captulos que traten los temas que le interesan. Utilice la ta- bla de contenido para localizar informacin sobre temas generales. Pue- de utilizar el ndice para encontrar informacin sobre un tema determi- nado o sobre una caracterstica de una versin anterior de Access.

    Si usa como referencia este libro despus de haber seguido los captulos, siga estos pasos: 1. Utilice el ndice para localizar informacin sobre un determinado tema y

    utilice la tabla de contenido para localizar informacin sobre temas ge- nerales.

    2. Lea el apartado Resumen del captulo al final de cada captulo para ver un breve repaso de las principales tareas. Los temas descritos en los apar- tados Resumen del captulo estn listados en el mismo orden en que es- tn presentados en el captulo.

  • Nuevas caractersticas para el desarrollo de aplicaciones de Access 2000

    La siguiente tabla presenta las nuevas caractersticas de Access 2000 que son estudiadas en este libro. La tabla indica el captulo en el que podemos apren- der cada una de estas caractersticas. Tambin puede utilizar el ndice para localizar informacin especfica sobre una determinada caracterstica o tarea que desee llevar a cabo.

    Para aprender cmo Consuiie

    Utilizar la nueva versin de Visual Basic, su ventana y Captulos 2 y 5 las herramientas actualizadas para Access para adaptarse a las otras aplicaciones de Office 2000

    Depurar el cdigo ms fcilmente utilizando las nuevas Captulo 6 facilidades de Visual Basic como la barra de herramientas Depuracin

    Acceder y modificar datos con objetos de datos de Captulo 12 ActiveX (ADO)

    Trabajar directamente con objetos de Word o Microsoft Captulo 14 Outlook utilizando cdigo de Automatizacin

    Trabajar con Internet o una intranet utilizando hipervnculos y pginas de acceso a datos

    Captulo 15

    Instalacin y uso de los archivos de prcticas

    El CD-ROM que puede encontrar en la cubierta de este libro contiene los ar- chivos de prcticas que sern utilizados en los ejercicios a lo largo del libro. Por ejemplo, cuando estemos aprendiendo a utilizar cdigo de Visual Basic en Access, abriremos uno de los archivos de prcticas -una base de datos que contiene diferentes tablas, formularios e informes ya creados- y a con- tinuacin modificaremos uno de los formularios que contiene. Haciendo uso de los archivos de prcticas, no emplearemos tiempo en la creacin de ejem- plos utilizados en los captulos - e n su lugar, podremos concentrar toda nuestra atencin en el aprendizaje del desarrollo de aplicaciones en Access. Con los archivos e instrucciones paso a paso de los captulos, adems apren-

  • deremos trabajando, siendo sta la forma ms eficiente y fcil para aprender y adquirir una gran destreza.

    Importante Antes de romper el precinto donde se encuentra el CD-ROM, asegrese de que dispone de la versin correcta del programa. Este libro est diseado para ser utilizado con Microsoft Access 2000 (versin 9.0) o Mi- crosoft Office 2000 Profesional, Premium o Desarrolladores para los siste- mas operativos Windows 95, Windows 98, Windows NT y Windows 2000. Para determinar el tipo de software que est siendo ejecutado, consulte la do- cumentacin que viene junto con su programa o inicie el programa y a con- tinuacin abra el men Ayuda y elija la orden Acerca de Microsoft Access. Si el programa no fuese compatible con este libro, probablemente est dis- ponible un libro de la serie Paso a paso o Programacin que coincida con su software.

    Instalacin de los archivos de prcticas en su computadora

    Para instalar los archivos de prcticas en el disco fijo de su computadora de forma que pueda utilizarlos en los ejercicios del libro, siga estos pasos. 1. Saque el disco de la parte interior de la cubierta posterior de este libro e

    insrtelo en la unidad de CD-ROM de su computadora. 2. En la barra de tareas situada en la parte inferior de su pantalla, pulse el

    botn Inicio y elija Ejecutar. Aparece el cuadro de dilogo Ejecutar.

    3. En el recuadro Abrir, escriba d:Instalar (o si su unidad de CD-ROM uti- liza una letra de unidad distinta de la d, sustituya por la letra de unidad correcta).

    4. Pulse el botn Aceptar y siga las instrucciones que se indican en la pan- talla. La ventana del programa de instalacin mostrar las opciones predeter- minadas recomendadas. Para obtener los resultados esperados en el uso de los archivos de prcticas de este libro, acepte las recomendaciones realizadas por el programa de instalacin.

    5. Una vez copiados los archivos, extraiga el disco de su unidad de CD- ROM y vuelva a colocarlo en el interior del sobre que se encuentra en la cubierta del libro. El programa de instalacin copia los archivos de prcticas en su disco fijo, en una carpeta denominada Archivos de prcticas de Access.

  • Uso de los archivos de prcticas

    Cada captulo de este libro explica cundo y cmo deben ser utilizados los co- rrespondientes archivos de prcticas. Cuando sea necesario el uso de un ar- chivo de prcticas, el libro listar las instrucciones sobre cmo abrir el archi- vo. La mayora de los archivos del CD-ROM son archivos de bases de datos de Access -contienen proyectos de programacin completados parcialmen- te sobre los que se trabajar en el aprendizaje de las tcnicas de programacin. Para aquellas personas a las que les gusta conocer todos los detalles, a con- tinuacin se muestra una lista de los archivos incluidos en el disco de prc- ticas:

    Captulo Nombre de archivo Descripcin

    Cap01 Datos Clientes Un archivo de texto que contiene los nombres y las direcciones de un conjunto imaginario de clientes y que se importar en una aplicacin de Access para la administracin de contactos

    2 Cap02 Contactos Un archivo de base de datos para una aplicacin de administracin de contactos, similar al que se crea en el Captulo 1 y que se utilizar hasta el Captulo 7

    3 Cap03 Contactos Un archivo de base de datos para una aplicacin de administracin de contactos

    4 Cap04 Contactos Un archivo de base de datos para una aplicacin de administracin de contactos

    Cap05 Contactos Un archivo de base de datos para una aplicacin de administracin de contactos

    6 Cap06 Contactos Un archivo de base de datos para una aplicacin de administracin

    f 1 de contactos

  • Captulo Nombre de archivo Descripcin

    7 Cap07 Contactos Un archivo de base de datos para una aplicacin de administracin de contactos

    8 Cap08 Suscriptor Un archivo de base de datos para una aplicacin de suscripciones a

    , revistas que se utilizar en los Captulos 8 a 11

    9 Cap09 Suscriptor Un archivo de base de datos para una aplicacin de suscripciones a revistas

    10 Cap10 Suscriptor Un archivo de base de datos para una aplicacin de suscripciones a revistas

    Cap 11 Presenta

    Cap 1 1 Suscriptor

    Cap 12 Problemas

    Cap1 3 Problemas

    Cap14 Problemas

    Cap14 Memorando

    Un archivo de mapa de bits con una imagen que haremos que Access presente cuando los usuarios inicien la aplicacin de suscripcin a revistas Un archivo de base de datos para una aplicacin de suscripciones a revistas

    Un archivo de base de datos para una aplicacin de seguimiento de problemas

    Un archivo de base de datos para una aplicacin de seguimiento de problemas

    Un archivo de base de datos para una aplicacin de seguimiento de problemas Una plantilla de Word que se utiliza para crear un memorando con datos extrados de la aplicacin de seguimiento de roble mas

  • Captulo Nombre de archivo Descripcin

    15 Cap 15 Problemas Un archivo de base de datos para una aplicacin de seguimiento de problemas

    Reasigna Un archivo HTML que contiene una pgina de acceso a datos para una aplicacin de seguimiento de problemas

    file0002, file0003, Archivos de soporte creados por file0007, filelist, Access para la pgina de acceso image00 1, image004, a datos Reasigna; debe estar en image005, image006 una carpeta denominada

    Reasigna-archivos l

    Necesita ayuda con los archivos de prcticas? Todos los esfuerzos han sido realizados para asegurar la precisin de este li- bro y el contenido del CD-ROM de archivos de prcticas. Si tiene algn pro- blema, Micrososft Press ofrece correcciones de sus libros a travs del servi- dor World Wide Web en

    http://mspress. microsoft. comisupport/

    Desinstalacin de los archivos de prcticas Utilice los siguientes pasos para eliminar los archivos de prcticas transferi- dos a su unidad de disco fijo mediante el uso del programa de instalacin. 1. Pulse el botn Inicio, abra el men Configuracin y elija Panel de control. 2. Pulse dos veces sobre el icono Agregar o quitar programas. 3. Seleccione Programacin con MS Access 2000 Macros y VBA de la lis-

    ta y despus pulse el botn Agregar o quitar. Aparecer en su pantalla un mensaje solicitando su confirmacin.

    4. Pulse el botn S. Los archivos de prcticas habrn sido desinstalados.

    ~ 5. Pulse el botn Aceptar para cerrar el cuadro de dilogo. Propiedades de Agregar o quitar programas.

    6. Cierre la ventana del Panel de control.

  • Cmo obtener ayuda sobre Access Access incluye un extenso sistema de ayuda con el que se puede obtener in- formacin acerca de un determinado tema o la respuesta a preguntas concre- tas. Descubrir lo valiosa que resulta la ayuda a medida que vaya aprendien- do a crear aplicaciones con Access. En la ayuda no slo se incluye informacin de referencia -adems contiene informacin sobre cmo realizar casi todas las tareas, introducciones grfi- cas a las diferentes reas de Access e informacin adicional que le ayuda a encontrar la informacin que necesita respondiendo a sus preguntas. Ade- ms, existe un tema de referencia completo para cada una de las funciones, los mtodos, las propiedades y el resto de los elementos que se utilizan en Access. Como podr comprobar, la ayuda incluye una serie de mtodos in- novadores que facilitan la localizacin de los temas. El Ayudante de Office El Ayudante de Office es un amistoso personaje animado que aparece sobre el rea de trabajo y con el cual es posible acce- der a los temas de ayuda sin ms que escribir una frase o una pregunta con nuestras propiaspalabras -no es necesario conocer los trminos exactos que se utilizan en el ndice de la ayuda en lnea. Esta capacidad hace del Ayudante de Office el mtodo ms adecuado para obtener ayuda cuando se nos plantea alguna duda durante el trabajo. Por ejemplo, si quisisemos saber cmo se visualiza una lista de valores, bastara con escribir buscar valores. El Ayu- dante de Office interpretara el texto y visualizara un conjunto de temas.

    Ayuda de Para visualizar el Ayudante de Office se ha de pulsar el botn Ayuda de Mi- Microsoft crosoft Access de la barra de herramientas. En cualquier momento que se Access quiera hacer una pregunta, basta con pulsar sobre el Ayudante de Office, es-

    cribir el texto de la misma y pulsar el botn Buscar. El Ayudante de Office detecta automticamente cundo se est trabajando con cdigo Visual Basic en la ventana de Visual Basic y refiere las bsquedas a los temas de progra- macin en lugar de los temas sobre Access en general.

    Consejo Aunque el ayudante de Office resulta ms divertido, es posible ac- ceder a los mismos temas de ayuda a travs de las solapas Contenido y Asis- tente para Ayuda de la ventana Ayuda -unas herramientas ms potentes, dado que permiten inspeccionar ms resultados je los que el ayudante de Office puede mostrar en su pequea ventana. Por esta razn, muchos programado- res y usuarios avanzados prefieren desactivar el ayudante de Office y explo- rar los temas de ayuda mediante las facilidades antes mencionadas. Para desactivar el ayudante de Office, pulse sobre l, pulse el botn Opciones y deseleccione la casilla de verificacin Utilizar el ayudante de Office, y pulse Aceptar. Despus de esto, al pulsar el botn Ayuda de Microsoft Access (o el botn Ayuda de cualquier aplicacin de Office) no se invocar al ayudante y

  • se pasar directamente a la ventana Ayuda de Office. Si echa de menos la compaa del ayudante, siempre puede volver a activarlo -sin ms que se- leccionar la orden Mostrar el Ayudante de Office, en el men de ayuda.

    Contenido Con la ventana Ayuda de Office a la vista, descubrir que esta ventana tiene tres solapas que permiten la bsqueda de informacin. Para mostrar estas solapas, pulse el botn Mostrar, que aparece en el lado iz- quierdo de la barra de herramientas de la ventana Ayuda. La solapa Conteni- do agrupa los temas segn un orden lgico, por lo que resulta muy conve- niente para inspeccionar la ayuda, descubrir la informacin que contiene y comenzar a explorar una nueva rea de Access o de Visual Basic. Para ins- peccionar la lista Contenido, se pulsa en la solapa Contenido, se pulsa sobre el signo ms (+) que aparece junto a la carpeta en la que estemos interesados y, a continuacin, se pulsa sobre el tema que deseemos mostrar. Asistente para Ayuda El Asistente para Ayuda responde a las preguntas uti- lizando la misma tecnologa que el ayudante de Office, pero sin la limitacin de presentar tan slo unas pocas respuestas. Para realizar una bsqueda con el Asistente para Ayuda, se pulsa el botn Mostrar en la barra de herramien-

    I tas de ayuda, se escribe una pregunta en texto libre y, a continuacin, se pul- sa el botn Buscar. En la lista de temas encontrados por el asistente, se pulsa sobre el tema que deseemos visualizar. ndice El Indice permite buscar todos los temas relacionados con una de- terminada palabra clave. Se pulsa el botn Mostrar en la barra de herra- mientas de ayuda, se escribe o se selecciona una palabra clave, se pulsa Bus- car y, a continuacin, se pulsa sobre el tema que deseemos visualizar. Ayuda sobre las palabras clave en Visual Basic Cuando se trabaja sobre cdigo Visual Basic, es posible acceder al tema de ayuda asociado con cual- quiera de las palabras clave que aparecen en la pantalla sin ms que pulsar una tecla. Para mostrar el tema de ayuda, se pulsa con el ratn sobre la pala- bra clave en la que se est interesado (ya sea una sentencia, una funcin o un mtodo), para colocar en ella el punto de insercin, y se pulsa la tecla FI . Recursos en la Web En el World Wide Web se puede encontrar una canti- dad ingente de informacin sobre Access, a la que podr acceder utilizando su motor de bsqueda preferido. El sitio Web de Microsoft ofrece muchos otros recursos relacionados con Office y Access, incluyendo informacin de ltima hora, documentacin interactiva, aplicaciones de ejemplo y progra- mas. Para visitar el sitio Web de Office, seleccione la orden Office en el Web (men Ayuda). O, para obtener ms informacin sobre la programacin en Visual Basic para Access, visite el Office Developer Forurn en

  • Convenios y caractersticas utilizadas en este libro Para ahorrar tiempo a la hora de utilizar este libro es importante que conozca, antes de comenzar la lectura de los captulos, cmo se muestran las instruc- ciones, teclas a pulsar, etc. Por favor, emplee unos instantes en la lectura de la siguiente lista, que adems indica otras caractersticas tiles de este libro.

    Convenios 1

    i El texto que debe escribir aparece en negrita. i Los trminos nuevos y los nombres de algunos elementos de Visual Ba-

    sic (argumentos, controles, procedimientos de evento, expresiones, for- mularios, funciones, mtodos, objetos, parmetros, procedimientos y va- riables) aparecen en cursiva.

    i Los nombres de las teclas que debe pulsar aparecen en LETRAS VERSALI- TAS. Un signo ms (+) entre dos nombres de tecla significa que debemos pulsar estas teclas simultneamente. Por ejemplo, Pulse ALT+TAB signi- fica que debe mantener presionada la tecla ALT mientras pulsa la tecla TAB.

    i El cdigo de los programas (en una o ms lneas separadas) aparece en un tipo monoespaciado: Me.AllowEdits = False

    Otras caractersticas de este libro i En Microsoft Access se pueden realizar muchas operaciones pulsando un

    botn de la barra de herramientas o una herramienta de la caja de herra- mientas. Cuando las instrucciones del libro le indiquen que debe pulsar un botn de la barra de herramientas, en el margen, junto a las instruc-

    Ventana ciones, aparecer un dibujo del botn. El botn Ventana Base de datos Base de que aparece en el margen junto a este prrafo es un ejemplo. da tos

    i Las ilustraciones con capturas de pantallas muestran ejemplos de la in- terfaz de usuario con los resultados de realizar los pasos y en muchas oca- siones incluyen textos que llaman la atencin sobre las partes de la ilus- tracin que as lo requieren.

    i Los apartados que aparecen con el fondo tramado, introducen tcnicas de programacin especiales, informacin adicional o caractersticas relacio- nadas con la cuestin que se est tratando.

    i El apartado Resumen del captulo, que puede encontrar al final de cada captulo, es una forma rpida de recordar cmo se llevan a cabo las tareas aprendidas.

  • i Los temas de Ayuda que aparecen al final de cada captulo, permiten determinar de forma rpida aquellos temas de la ayuda interactiva que estn disponibles. El sistema de ayuda ofrece una referencia interactiva completa para Access.

    Correcciones, comentarios y ayuda Todos los esfuerzos han sido realizados para asegurar la precisin de este li- bro y el contenido del CD-ROM de archivos de prcticas. Si tiene algn pro- blema, Microsoft Press ofrece correcciones de sus libros a travs del servi- dor World Wide Web en

    Agradeceremos que nos enve cualquier comentario, pregunta o idea rela- cionada con este libro o el disco que le acompaa. Por correo electrnico a

    profesional @mcgraw-hi1l.e~ O por correo ordinario a

    McGraw-Hill/Interamericana de Espaa, S. A. U. Attn: Editor de la serie Programacin e/ Basauri, 17 28023 Aravaca - Madrid - Espaa

    Por favor, tenga en cuenta que en estas direcciones no se ofrece soporte tc- nico sobre Access. Para obtener ayuda sobre el uso de Access, puede llamar al Soporte Tcnico de Microsoft correspondiente a su pas.

    Visite nuestro sitio en el World Wide Web Le invitamos a que visite el sitio Web de McGraw-Hill y Microsoft Press, en las siguientes direcciones:

    En ellas encontrar una amplia informacin sobre todos nuestros libros, rea- lizacin de pedidos, noticias sobre caractersticas y eventos especiales, con- tenido adicional para libros de Microsoft Press y mucho ms.

  • Asimismo, puede encontrar noticias sobre Microsoft y sus ltimos desarro- llos de software en el sitio Web

    http://www. microsoft. c o d Esperamos su visita en la Web!

  • PARTE I Automatizacin de tareas de base de datos

  • Cmo empezar rpidamente mediante los asistentes

    Objetivos del capitulo En este captulo aprender a:

    Tiempo estimado: Crear una base de datos con el Asistente para bases de datos. 30 minutos.

    m Aadir otro objeto a una base de datos creada con el asistente. Crear un botn de orden con un asistente.

    Alguna vez se ha encontrado intentando escribir una carta o un informe sin saber cmo empezar a hacerlo? Una pgina en blanco puede constituir un gran obstculo. Esa es la razn por la que en muchas ocasiones buscamos la ayuda de otros, y lo que hace que la tormenta de ideas sea una tcnica tan buena -las ideas, ya sean buenas o malas, hacen acudir otras ideas y, casi sin darnos cuenta, damos con un buen punto de partida. Crear una aplicacin de bases de datos desde cero, igual que trabajar con una pgina en blanco, es una tarea difcil. De hecho, antes de empezar a perso- nalizarla o a hacer cualquier tipo de programacin, se debe haber construido la mayor parte de la base de datos y tenerla ya funcionando. Afortunada- mente, Microsoft Access incluye diferentes asistentes que permiten empezar a trabajar rpidamente. Los asistentes hacen preguntas acerca de las bases de datos y los objetos que se desea crear, y se encargan de crearlos. Por ejem- plo, el Asistente para bases de datos puede crear todos los elementos bsicos de una aplicacin de bases de datos -tablas, formularios, informes y otros objetos. Una vez que el asistente ha hecho su trabajo, ya es posible empezar

  • y',I a utilizar la aplicacin, pero, adems, tambin es posible modificar la inter- faz de usuario creada por el asistente, agregar nuevos objetos e incluso eli- minar algunos de los objetos que ha creado el asistente sustituyndolos por otros que creemos nosotros. En este captulo crear una aplicacin de bases de datos completa a partir de cero utilizando el Asistente para bases de datos y luego personalizar dicha apli- cacin de distintas formas. Despus, a medida que avance por la Parte 1, apren- der cmo se utiliza Visual Basic -as como otros asistentes de Microsoft Ac- cess- para personalizar an ms el funcionamiento de una base de datos.

    Inicie la leccin i Inicie Microsoft Access 2000. Pulse el botn Inicio de la barra de tareas,

    apunte a Programas y seleccione Microsoft Access.

    USO DE LOS ASISTENTES PARA EL DESARROLLO DE APLICACIONES Parece como si ltimamente estuviesen apareciendo asistentes por todas par- tes -generalmente para ayudar a los usuarios finales a realizar ciertas tare- as difciles, sin necesidad de conocer las interioridades del software. Sin em- bargo en Microsoft Access se incluyen varios asistentes que tambin ayudan a los desarrolladores de aplicaciones a realizar su trabajo. En este libro se uti- lizarn los siguientes asistentes: i Asistente para bases de datos i Asistente para importacin de texto

    1

    i Asistente para botones de comando i i Asistente para cuadros combinados

    i Asistente para grupos de opciones i Asistente para dividir bases de datos Estos asistentes no slo permiten agilizar el trabajo sino que adems sirven para aprender sobre el desarrollo de aplicaciones mientras se realiza el tra- bajo. An as, es importante tener presente que cualquier cosa que se haga con un asistente tambin se puede hacer sin su ayuda. De hecho, los propios asistentes estn escritos en el lenguaje de programacin Visual Basic y utili- zan en sus interfaces los formularios normales de Access, igual que las apli- caciones que crear usted. A medida que aprenda a programar Access usando Visual Basic podr llegar mucho ms lejos que con los asistentes. Sin embargo no hay por qu despre- ciar la ayuda que stos proporcionan.

  • CREACIN DE UNA BASE DE DATOS CON EL ASISTENTE PARA BASES DE DATOS

    El Asistente para bases de datos puede crear diferentes tipos de bases de da- tos habituales tanto para uso comercial como personal, entre los que se in- cluyen: i Administracin de actividades i 1 i Administracin de contactos i Administracin de llamadas i Control de activos i Control de inventario i Gastos i Introduccin de pedidos i Libro mayor i Programacin de recursos

    , i Tiempo y facturacin

    Nota Aunque el Asistente no tenga exactamente la base de datos que est buscando, entre todas las que proporciona puede obtener ideas para sus pro- pias aplicaciones. Adems, todas las tcnicas que utilizar para modificar la base de datos creada por el asistente se aplican igual a las tablas y formula- rios que cree por su cuenta. De hecho, en la Parte 111, ignoraremos por com- pleto al Asistente para bases de datos y crearemos desde el principio todos los elementos de una interfaz de usuario.

    Cree la base de datos Contactos

    C4 1. En el cuadro de dilogo inicial de Access, pulse Asistentes, pginas y pro- yectos de bases de datos de Access y despus pulse Aceptar. Si ya ha ce- Nueva rrado el cuadro de dilogo inicial, pulse el botn Nueva base de datos.

    Access mostrar el cuadro de dilogo Nueva. 2. Pulse la ficha Bases de datos.

    Access mostrar los iconos de todos los tipos de bases de datos que pue- de crear con el Asistente para bases de datos.

  • General de ] Pldntllla~ de Off~ce 97 1

    de recursos Facturacin m -

    3. Pulse dos veces el icono Administracin de contactos. Access le preguntar el nombre y la ubicacin del nuevo archivo de base de datos.

    4. Vaya a la carpeta donde instal los archivos de prcticas (probablemente c:Mrchivos de ejercicios de Access).

    5. En el cuadro Nombre de archivo escriba Cap01 Contactos y pulse Crear. Se inicia el Asistente para bases de datos mostrando una lista con los ti- pos de informacin que la base de datos de administracin de contactos puede incluir.

    6. Pulse Siguiente. El Asistente para bases de datos le preguntar si desea incluir alguno de los campos opcionales en la base de datos. No es necesario que realice nin- gn cambio puesto que no necesitar ninguno de los campos opcionales.

    7. Pulse Siguiente. El Asistente para bases de datos le preguntar qu estilo desea que se uti- lice en la creacin de los formularios de la aplicacin.

    8. Pulse Estndai y a continuacin pulse Finalizar. El Asistente para bases de datos se ocupar de crear la base de datos Con- tactos, operacin que durar entre uno y dos minutos. Despus abrir el formulario Panel de control principal, que aparece cada vez que se abre la base de datos y gua al usuario por la misma. Un formulario Panel de control principal incluye botones y texto que abren otros formularios e informes de una aplicacin -proporcionando una especie de centro de control para los usuarios.

  • _] Ititroduc!r/\i1er d i a inforriiacion _] Vi.ta previct d~ lu i r iurnie.. A Carntr~ai In; eler~irritoi del Panel de contr.1

    J ilir da e-t? ba-s da datnr

    Nota Si aparece sobre el formulario Panel de control principal la hoja de propiedades de Access (porque haba dejado abierta otra base de datos), ci- rrela ahora para que no estorbe.

    Visualice el formulario Contactos

    El primer elemento del Panel de control principal permite a los usuarios abrir el formulario Contactos, formulario principal de la aplicacin, en el que po- dr ver e introducir informacin de contactos en la base de datos.

    Qu es una aplicacin de bases de datos ? 1 La base de datos Contactos que acabamos de crear es mucho ms que una simple base de datos de Access: con el formulario Panel de control princi- pal y el resto de formularios e informes que contiene, la base de datos Contactos es una aplicacin. Este trmino se refiere al hecho de que la base de datos tiene su propia interfaz de usuario, especialmente diseada para ayudar a los usuarios de la base de datos a navegar por sus formularios e informes y a obtener el trabajo deseado de la ba~e de datos. Las aplicacio- nes de bases de datos van desde una tan sencilla como Contactos, con una misin nica y simple, hasta completas soluciones empresariales que con- tienen gmn nmero de objetos y miles de lneas de cdigo Visual Basic. El desarrollo de aplicaciones personalizadas es de la programacin de Access con Visual Basic de este libro. A travs del libro, aprender a pers

    (Contina)

  • (Continuacin) datos de Access para resolver problemas especficos de usuario y a facilitar la entrada y salida de datos en la computadora. Debido a su simplicidad, la interfaz de la base de datos Contactos permite realizar un gran nmero de personalizaciones, lo que hace que esta base de datos sea un excelente punto de partida.

    1. En el formulario Panel de controlprincipal, pulse IntroducirNer Contactos. Se abrir el formulario Contactos, dispuesto para aceptar nuevos regis- tros. Adems de los cuadros de texto y otros controles para la informa- cin almacenada en la tabla Contactos, el formulario incluye un pie de pgina con botones de rdenes que los usuarios pueden pulsar para reali- zar acciones tpicas.

    ,,L,",,,"Y'

    Cornpafiis Estimado Dileccion

    Codigo postal c,8.*da8i Entado/Prnvinria Pas

    2. Cierre el formulario Contactos. (Pulse el botn de cierre - e l que tiene una X- de la esquina superior derecha de la ventana del formulario.)

    Qu ms ha creado el Asistente?

    El Asistente para bases de datos crea todos los elementos bsicos de una apli- cacin de bases de datos, junto con una serie de herramientas que ayudarn al usuario a navegar por la aplicacin. A continuacin se muestra una lista de los elementos que incluye la base de datos Contactos:

    Tablas que almacenan la informacin sobre contactos, tipos de contacto y llamadas telefnicas. (El asistente asigna automticamente las propie- dades de cada tabla y crea las relaciones entre las tablas.)

  • i Formularios para la introduccin de informacin de contactos y de lla- madas telefnicas.

    M Informes para resumir la informacin sobre contactos y llamadas telef- nicas.

    i El formulario Panel de control principal y la tabla Elementos del Panel de control, que configuran el panel de control de la aplicacin que apa- rece siempre que se abre la base de datos Contactos.

    Nota El formulario Panel de control principal (Switchboard) que ha crea- do el asistente es un formulario especial que nunca debemos intentar modi- ficar directamente. Contiene cdigo de Visual Basic que, junto con la tabla Elementos del Panel de control (Switchboard Items), muestran el texto que aparece en pantalla y permiten el funcionamiento de los botones. Aunque no es fcil modificar el funcionamiento de este formulario, podremos aadir o eliminar botones del mismo, tal como veremos ms tarde en esta leccin. Adems, podremos reemplazar el formulario Panel de control principal por nuestro propio formulario de inicio, tcnica que veremos en el Captulo 11.

    Visualice los objetos de la base de datos Contactos Un vistazo rpido a la ventana Base de datos nos permitir ver todos los obje- tos que ha creado el Asistente para bases de datos en la aplicacin. Esto nos ayu- dar a comprobar que no hay nada mgico en lo que ha creado el asistente -se trata simplemente de una serie de objetos envueltos en un bonito paquete. 1. Pulse el botn Ventana Base de datos. 2. Pulse en los accesos directos Tablas, Formularios e Informes para ver las cua-

    Ventana tro tablas, los siete formularios y los dos informes creados por el asistente. Base de datos

    Subformulario detalles de llamadas ltstado de llamadar

    m Tpos de contacto

  • Para muchos usuarios de Microsoft Access, las tablas, formularios e in- formes creados por el asistente sern suficientemente buenos. No obs- tante, como desarrollador de bases de datos personalizadas, le interesar personalizar estos objetos y crear otros nuevos. Ahora que el Asistente para bases de datos ha realizado su misin, podemos decidir si manten- dremos toda o parte de la base de datos creada por el asistente, si aadi- remos nuevos objetos o si modificaremos los existentes para que se ajus- ten a las necesidades de nuestros usuarios.

    3. Minimice la ventana Base de datos.

    ' m Listado de contactos alfabetico / 3 Resumen de llamadas semanales -3

    Pulse el botn Minimizar para minimizar la ventana

    Introduccin de informacin en la base de datos

    Lo primero que tenemos que hacer despus de crear una base de datos es introducir informacin en la misma. La aplicacin Administracin de con- tactos nos permite mantener una lista de los tipos de contactos que tenemos, de forma que podamos categorizar cada contacto introducido en la base de datos. Antes de seguir adelante, parece lgico introducir esta informacin preliminar.

    Introduzca los tipos de contactos

    Puede utilizar el formulario Panel de control principal para abrir un formu- lario en el que podr introducir los tipos de contactos. 1. En el formulario Panel de control principal, pulse IntroducirNer otra in-

    formacin.

  • 2. Pulse IntroducirNer tipos de contacto. Se abrir el formulario Tipos de contacto, preparado para introducir un nuevo registro.

    3. Escriba Cliente. 4. Pulse el botn Nuevo registro.

    - Botn Nuevo registro

    Access guarda el registro y pasa al siguiente. 5. Escriba Proveedor. 6. Pulse el botn Nuevo registro y escriba Personal. 7. Cierre el formulario Tipos de contacto (pulse el botn Cerrar de la esqui-

    na superior derecha de la ventana de formulario). 8. Pulse Volver al panel de control principal.

    Al hacerlo volver a aparecer el men del Panel de control principal. Cuando introduzca ahora los contactos, podr seleccionar uno de estos tres tipos para cada registro de contactos.

    Uso de datos existentes con una base de datos nueva

    Como ya hemos visto, el formulario Contactos est vaco -no muestra nin- gn registro. Supongamos que ya tenamos cierta informacin de contactos almacenada en otro programa y que no queremos volver a escribir los mis- mos datos en nuestra aplicacin de Access. Uno de los archivos de ejemplo incluidos en el CD de prcticas es Cap01 Datos Clientes, un archivo de tex- to delimitado por comas que contiene nombres, direcciones y nmeros de te- lfono que podemos aadir a la tabla Contactos. El archivo podra haberse exportado desde otro sistema de base de datos o de hoja de clculo con la in- tencin de pasarlo a Access. Antes de importar datos en una tabla existente, deberemos asegurarnos de que estn en un formato aceptado por Microsoft Access. Por ejemplo, pode- mos importar una hoja de clculo de Excel, un archivo dBASE o un archi- vo de texto. Adems, los datos del archivo que queremos importar debern ser compatibles con la estructura de la tabla a la que los estamos aadiendo. Si no es as, puede que necesitemos editar el archivo antes de importarlo,

  • para prepararlo para Access. Por ejemplo, el archivo de texto CapOl Datos Clientes ya tiene los nombres de campo correctos para la tabla Contactos en la primera fila del archivo, de forma que Access podr determinar en qu campos debe guardar los datos.

    Importe datos a la tabla Contactos

    1. En el men Archivo, apunte a Obtener datos externos y pulse Importar. Access mostrar el cuadro de dilogo Importar, en el que podremos se- leccionar entre una variedad de formatos de datos para importar.

    2. En el cuadro Tipo de archivo, seleccione Archivos de texto. El cuadro de dilogo Importar muestra el archivo de texto CapOl Datos Clientes, que se incluye en el disco de prcticas que hemos instalado.

    3. Seleccione CapOl Datos Clientes y pulse Importar. Access abrir el Asistente para importacin de texto, que nos ayudar a seleccionar las opciones para importar archivos de texto delimitados o de longitud fija. El asistente detectar automticamente que el archivo de texto CapOl Datos Clientes est en formato Delimitado.

    LO- datos parecen tener el formato 'Ueliniitnd~i Si no es aci eliia el formatc ~ U P melur drkrriha Inv dato,

    12 pliiiiitudo Card~trrei tales r r n u 8 nnio o tab~laci i~n srpsran cada Lampu C A ~ h r i h l ~ Los carnpn: s.;tsri alinesdo, en rulurnnas Lnn e%parin, entre cado mpn

    El asistente muestra los campos del archivo de texto tal como los importa Access

    4. Pulse Siguiente. 5. Seleccione la opcin Primera fila contiene nombres de campos y pulse

    Siguiente. 6. Seleccione la opcin En una tabla existente, seleccione la tabla Contac-

    tos en la lista desplegable y pulse Finalizar.

  • cu iidr jw,ra dlma~enar los datos' r ~n una weva tabla ri En una i o ~ , ~ i t r t ~ r i t e Seleccione aqu

    la tabla Contactos

    Access aadir los registros del archivo de texto a la tabla Contactos y despus mostrar un mensaje indicando que ha finalizado correctamente.

    7. Pulse Aceptar.

    Visualice los nuevos registros en el formulario Contactos

    Ahora, cuando los usuarios abran el formulario Contactos, vern los regis- tros de clientes que hemos aadido, vern los registros de clientes que hemos aadido y podrn comenzar a registrar llamadas o a aadir nuevos contactos. Tambin podemos comprobar que los tipos de contactos aadidos a la base de datos estn disponibles en el formulario. 1. En el formulario Panel de control principal, pulse IntroducirNer contac-

    tos.

    El formulario mostrar el primer registro que hemos importado en la ta- bla Contactos. Debido a que el archivo de texto slo contena un sub- conjunto de los campos de la tabla, algunos de los cuadros de texto esta- rn en blanco.

  • Nombre Id de coritacto Apell1~3os f nnipaa Estimado Dsecriun

    Cndign pnstoi Ciudad Estado/Prn~iiiic~a I':,evrlla

    2. Pulse el botn Pgina 2 en el pie del formulario. 3. Pulse la flecha desplegable que aparece junto al cuadro Tipo de contacto

    y pulse Cliente.

    Floiitbr? roritcko Tipn de contacto Nombre corrsci Referido par Notas

    l i i i Sanchez Loper

    Como podr observar, en la lista aparecen los tres tipos de contactos que hemos introducido.

    4. Cierre el formulario Contactos.

    INCLUSIN DE UN OBJETO E N NUESTRA APLICACIN Aunque el Asistente para bases de datos crea varios formularios e informes tiles para la base de datos Contactos, seguro que necesitamos aadir algu- no ms en nuestra aplicacin. Suponga que los usuarios necesitan imprimir una lista actualizada de telfonos para sus contactos, organizada por la ciu- dad en la que se encuentran. Podemos crear este formulario de forma senci- lla mediante el uso del Asistente para informes.

  • Cree un informe de la lista de contactos organizado por ciudad

    1. Pulse el botn Ventana Base de datos. 2. Pulse el acceso directo Informes.

    Ventana Base de datos 3. Pulse dos veces sobre Crear un informe utilizando el asistente.

    Se inicia el Asistente para informes preguntando por los campos que se quieren incluir en el informe.

    4. Pulse la flecha junto al cuadro Tablas/Consultas y luego pulse en Tabla: Contactos.

    5. En el cuadro Campos disponibles pulse dos veces sobre el campo Ciu- dad, seguido de los campos Apellidos-, Nombre-, NombreCompafia, Estimado y TelfonoTrabajo. El Asistente para informes aade los campos a la lista Campos seleccio- nados.

    QUR campo: dwe3 ~ri~lliir en PI informe?

    0 Puede elegr de mas de ura cons!~lla 0 tabb

    Pulse dos veces sobre un campo para aadirlo al informe

    6. Pulse Siguiente. El asistente le preguntar qu campos desea utilizar para agrupar datos en el informe.

    7. Pulse dos veces el campo Ciudad en la lista y pulse Siguiente. El asistente le preguntar qu campos desea ordenar en el informe.

    8. Seleccione el campo Apellidos- en el primer cuadro de ordenacin, se- leccione el campo Nombre- en el segundo cuadro y pulse Siguiente. El asistente le preguntar qu distribucin desea aplicar al informe.

    9. En el cuadro Distribucin, seleccione Esquema 1 y pulse Siguiente.

  • 10. Seleccione un estilo para su informe (o acepte el asignado por omisin) y pulse Siguiente. El asistente le pedir que especifique un ttulo para el informe.

    11. Escriba Contactos por ciudades y pulse Finalizar. El asistente crear el informe Contactos por ciudades y lo mostrar en Presentacin preliminar.

    12. Cierre el informe. 13. Minimice la ventana Base de datos.

    Aada el nuevo informe al formulario Panel de control principal

    Despus de crear objetos nuevos, podemos aadirlos al formulario Panel de control creado por el Asistente para bases de datos. 1. En el formulario Panel de control principal, pulse Cambiar los elemen-

    tos del Panel de control. Access abrir el Administrador del panel de control, que le ayudar a mo- dificar los elementos disponibles en el formulario Panel de control.

  • s del panrl de control:

    2. Seleccione Panel de control de informes y pulse Modificar. 3. Pulse Nuevo. 4. En el cuadro Texto escriba Vista previa del informe Contactos por ciu-

    dades. 5. En el cuadro Comando seleccione Abrir informe. 6. En el cuadro Informe seleccione Contactos por ciudades y pulse Acep-

    tar.

    7. Pulse Vista previa del informe Contactos por ciudades y despus pulse Mover arriba.

    8. Pulse Cerrar. 9. Vuelva a pulsar Cerrar.

    El Administrador del panel de control actualizar los elementos de la tabla Elementos del Panel de control para que nuestro nuevo elemento aparezca en el formulario Panel de control principal.

    Pruebe el nuevo botn del Panel de control

    1. En el formulario Panel de control principal pulse Vista previa de los in- formes. Pulse Vista previa del informe Contactos por ciudades.

    2. El botn abre nuestro informe.

  • ] ' !vi3 prpvia del intorrne Li t,jt de contactos alfabetico La pgina de

    ' 1 VI,^, prcita drl iriluiiie Contactos por ciudades informes del 1 fuiv~r al panel de cuntrol principal form~lar i0

    Panel de control princ~pal muestra ahora la nueva opcin

    3. Cierre la ventana del informe. 4. En el formulario Panel de control, pulse Volver al panel de control prin-

    cipal.

    INCLUSIN D E UN BOTN DE ORDEN E N UN FORMULARIO Ya hemos visto cmo los botones del formulario Panel de control pueden ayudar a los usuarios a abrir los formularios e informes que necesiten. De esta forma, los botones pueden ayudar a los usuarios a navegar por la apli- cacin, integrando los objetos dentro de una potente aplicacin. Es deseable que cuando los usuarios accedan a los formularios de la aplica- cin tengan las tareas habituales directamente accesibles, para facilitar as el uso de los formularios. Una forma de hacerlo consiste en crear botones de rdenes (de comando) que automaticen las tareas de los formularios de nuestra aplicacin. Como ya hemos visto, el Asistente para bases de datos ha creado algunos botones tiles en el formulario Contactos.

    Abra el formulario Contactos y pruebe un botn de orden

    1. En el formulario Panel de control principal, pulse IntroducirNer contac- tos.

  • Estos botones de rdenes abren otros formularios o realizan tareas habituales

    2. Pulse el botn Llamadas. Aparecer el formulario Llamadas. Cuando pulse el botn, ste ejecuta- r unas cuantas lneas de cdigo Visual Basic programado por el Asis- tente para bases de datos. A continuacin, aadiremos nuestro propio bo- tn al formulario Contactos, que funcionar de forma muy similar.

    3. Cierre el formulario Llamadas.

    Cree un botn de orden que pase a un registro nuevo

    Cuando abrimos el formulario Contactos, aparece el primer registro existen- te. Si queremos introducir un contacto nuevo, podemos desplazarnos al nue- vo registro, al final del conjunto de registros, pulsando el botn Nuevo re- gistro que aparece en la parte inferior de la ventana del formulario. Tambin podemos utilizar la orden Insertar registro con el mismo resultado.

    Nuevo Pero supongamos que queremos hacer esta orden ms accesible a los dems, registro para evitar que tengan que localizarla en el men o que se vean obligados a

    conocer los botones de navegacin -al fin y al cabo, los usuarios nuevos no estarn tan familiarizados con Access como nosotros. Para colocar esta or- den en primer plano, pasaremos a la vista Diseo de este formulario y colo- caremosen su parte inferior un botn que realice la accin cada vez que sea

    U pulsado. El Asistente para botones de comando generar por nosotros el c- digo de Visual Basic necesario para su funcionamiento. Vista 1. Pulse el botn Vista Diseo en la barra de herramientas. (Si aparece la Diseo hoja de propiedades, cirrela.)

  • 2. Desplcese hacia abajo por el formulario hasta llegar a la seccin Pie del formulario.

    En el formulario Contactos, los botones de orden aparecen en la seccin Pie del formulario

    3. Si no ve el cuadro de herramientas, pulse el botn Cuadro de herramien- tas en la barra de herramientas.

    Cuadro de 4. En el cuadro de herramientas, asegrese de que est seleccionada la herra- herramientas mienta Asistentes para controles y pulse la herramienta Botn de comando.

    Herramienta Asistentes para controles (seleccionada)

    Herramienta Botn de comando

    5. En el pie del formulario, pulse justo a la derecha del botn Pgina 2. I I I

    Pulse aqu para crear el nuevo botn

    Se abrir el Asistente para botones de comando, preguntando qu accin desea que ocurra cuando se pulse el botn.

  • 6. En la lista Categoras, seleccione Operaciones con registros.

    Existrn diiererites arciories pata cada categora.

    Acciones de botn que podemos seleccionar

    7. En la lista Acciones, seleccione Agregar nuevo registro y pulse Si- guiente. El asistente le preguntar si desea texto o imagen en el botn.

    8. Seleccione la opcin Texto y pulse Siguiente. Cuando creamos nuestros propios botones, puede interesarnos utilizar las imgenes que el asistente proporciona para los mismos -existe una am- plia biblioteca de iconos entre los que elegir. El asistente muestra adems una vista preliminar del botn que hayamos elegido. No obstante, en este caso los botones existentes en el formulario Contactos contienen texto, por lo que, en bien de la consistencia, seguiremos utilizando texto en este nuevo botn.

    9. Escriba AgregarRegistro como nombre del botn y pulse Finalizar.

    Nota Aunque el ttulo del botn (Agregar nuevo registro) contiene espa- cios en blanco, no queremos que los nombres de los botones los incluyan. A lo largo de este libro asignaremos a los objetos nombres que no conten- gan espacios, porque as es ms fcil referenciarlos desde el cdigo Visual B asic.

    El asistente finalizar la creacin del botn y lo colocar en nuestro formu- lario. Fuera de nuestra vista, escribir adems unas cuantas lneas de cdigo Visual Basic y las conectar con el botn.

  • , Pruebe el nuevo botn de orden

    Conviene asegurarnos de que el botn Agregar nuevo registro hace exacta- mente lo que queremos.

    Vista Formulario

    1. Pulse el botn Vista Formulario en la barra de herramientas. 2. Pulse el botn Agregar nuevo registro.

    Access nos llevar a un registro nuevo en la tabla Contactos, mostrando un formulario vaco para que introduzcamos los datos.

    Creacin de otros botones de orden

    Podemos ver lo sencillo que resulta personalizar nuestros formularios aa- diendo botones de orden. Como vimos cuando utilizamos el Asistente para botones de comando, aadir un registro es slo una de las muchas operacio- nes para las que podemos crear un botn -el Asistente para botones de co- mando puede crear botones para casi todo tipo de tareas. Estas son algunas de las operaciones habituales para las que podemos crear botones: i Navegacin por los registros i Localizacin y filtrado de datos

    r

    ; Cmo funciona el botn? i

    Si creamos un botn sin utilizar el Asistente para botones de coman- do, el botn no har nada cuando lo pulsemos. Qu ha hecho el asis- tente para que el botn haga lo que le pedimos? Veamos cmo funciona: cada vez que realizamos una accin cual- quiera sobre un formulario -pulsar un botn o modificar el valor de un campo, por ejemplo- se genera un evento. Cada evento es una oportunidad para que la aplicacin realice alguna accin, como ejecu- tar una macro o un procedimiento de Visual Basic, Cuando el Asisten-

    botones de comando cre el botn, conect un procedimiento I (Contina)

  • (Continuacin)

    pulsa el botn se ejecuta el cdigo de Visual to de evento, haciendo que Access realice la eada -en este

    i Apertura de formularios e informes i Impresin y dems tareas variadas El uso del Asistente para botones de comando permite programar sin pro- gramar -incluso cuando la programacin con Access se convierta en algo natural para nosotros, puede que sigamos prefiriendo dejar que el asistente se encargue de dar los primeros pasos.

    Cierre el formulario Contactos

    1. Cierre la ventana del formulario. 2. Cuando Access le pregunte si desea guardar los cambios realizados en el

    formulario Contactos, pulse S.

    Nota Cuando guardamos el formulario, Access no slo guarda el nuevo bo- tn, sino tambin el cdigo de Visual Basic que ha creado el asistente. Debi- do a que el mdulo del formulario se guarda junto con el formulario, no ten- dremos que guardar e1 cdigo de Visual Basic por separado.

    Cierre la aplicacin y salga de Microsoft Access

    1. En el formulario Panel de control principal, pulse Salir de esta base de datos.

    2. En el men Archivo, pulse Salir.

    1 Paso de macros a Visual Basic I En las lecciones siguientes, aprenderemos a realizar muchas tareas de

    '

    base de datos utilizando cdigo Visual Basic. Algunas de estas tareas llev ss. No obstan-

    (Contina)

  • (Continuacin) te, las macros son mucho menos flexibles y potentes que Visual Basic -y debido a que existen equivalentes de Visual Basic para prctica- mente todas las acciones de las macros, podremos realizar con Visual Basic las mismas acciones que realizan las macros. Gracias a la po- tencia y flexibilidad de Visual Basic, tanto el Asistente para bases de datos como el Asistente para botones de comando crean procedimien- tos de evento de Visual Basic, no macros. Si sus bases de datos tienen macros, muy pronto podr convertirlas en cdigo de Visual Basic -de esta forma, tendr en sus aplicaciones una strategia de personalizacin consistente. Access convierte esta trans-

    acin en una tarea sencilla gracias a un conjunto de rdenes que plazan las macros por procedimientos en Visual Basic. Para con-

    vertir una macro concreta se selecciona la macro en la ventana Base de datos, se selecciona Guardar como o exportar en el men Archivo y luego se selecciona Guardar como mdulo de Visual Basic. Para con- vertir todas las macros que se utilicen en un formulario se abre el for- mulario en la vista Diseo, se pulsa Macro en el men Herramientas y se selecciona Convertir macros a Visual Basic. Access no slo crea procedimientos para todas las rnacros, sino que adems los conecta a los mismos eventos, de forma que nuestra aplicacin funciona exacta- mente igual que antes.

    Resumen del captulo

    Para Haga esto Botn

    Crear una base de datos Pulse el botn Nueva base de datos utilizando el Asistente para y pulse dos veces sobre el tipo bases de datos de base de datos que desea. Importar datos en una En el men Archivo, apunte a base de datos existente Obtener datos externos y despus

    pulse Importar. Modificar el formulario Pulse el botn Cambiar los Panel de control de una elementos del panel de control base de datos creada por en el formulario Panel de control. el Asistente para bases de datos

  • Q Ayuda

    Para Haga esto Botn

    Crear en un

    un botn de orden En la vista Diseo, pulse la formulario herramienta Botn de comando

    y pulse sobre el formulario en la posicin donde quiera colocar el botn.

    Para obtener informacin interactiva sobre Pulse el botn Ayuda y luego pida ayuda sobre

    Creacin de aplicaciones nueva base de datos de bases de datos Primeros pasos mdulos de Visual Basic con Visual Basic Creacin de botones botn de comando de orden

    AVANCE DEL SIGUIENTE CAPITULO En esta leccin, hemos aprendido que los asistentes pueden crear para noso- tros objetos tiles, acompandolos con cdigo de Visual Basic. En el si- guiente captulo aprenderemos a ver y realizar modificaciones al cdigo de Visual Basic que ha generado el asistente, as como a escribir nuestros pro- pios procedimientos de evento para realizar tareas que los asistentes no ha- cen.

  • Personalizacin de una aplicacin con Visual Basic

    Objetivos del capitulo En este captulo aprender a:

    Tiempo estimado: Ver y entender el cdigo de Visual Basic creado por el Asistente para bo- 40 minutos. tones de comando.

    M Editar cdigo de Visual Basic en la ventana de Visual Basic. Establecer propiedades de formulario y de control utilizando Visual Basic. Mostrar un cuadro de mensaje.

    Cuando tomamos el autobs circular que rodea la ciudad, la planificacin del viaje resulta de vital importancia. Dnde para el autobs? A qu distancia me dejar de mi destino? Nos guste o no, el autobs sigue una ruta predeter- minada. Pero, jno sera estupendo que tuviramos el control absoluto sobre la ruta del autobs? Simplemente podramos sentamos junto al conductor y decirle gire a la izquierda en el siguiente semforo, siga de frente unos dos kilmetros -yo me bajo en el segundo edificio de la derecha. A todo el mundo le gusta tener el control de las situaciones -una caracte- rstica especialmente habitual en los programadores y usuarios de computa- doras. Si hay una queja habitual que provenga de los usuarios de computa- doras es del tipo Esta mquina no me deja hacer lo que yo quiero o bien me encantara poder disear el software para que funcionara de otra for- ma. El trabajo con Microsoft Access no es una excepcin a esta norma. No

  • hay duda de que podemos realizar gran parte del trabajo sin demasiado tra- bajo extra e incluso podemos personalizar el aspecto y comportamiento de nuestra aplicacin. Pero si queremos que funcione de una forma concreta o si estamos desarrollando una aplicacin para terceras personas con necesi- dades muy concretas, tendremos que utilizar Visual Basic. Una aplicacin personalizada implica ms trabajo de desarrollo, pero si realizamos el es- fuerzo de programar nuestras propias soluciones en Visual Basic tendremos a nuestra disposicin un conjunto ilimitado de posibilidades. En este captulo comenzaremos a tomar las riendas de la aplicacin -indi- cndole cmo debe funcionar, en lugar de seguir las reglas establecidas por Access.

    Inicie la leccin i Inicie Access y abra la base de datos Cap02 Contactos de la carpeta de ar-

    chivos de prcticas.

    PERSONALIZACIN DE U N BOTN DE ORDEN En el primer captulo creamos un botn utilizando el Asistente para botones de comando y el botn funcion tal como se esperaba -nos llevaba a un re- gistro nuevo en el formulario Contactos. Pero, qu ocurre si creamos un bo- tn con el asistente y no funciona exactamente como queremos? O qu pasa si el asistente no nos ofrece un botn que haga lo que nosotros queremos? Puede que ya lo haya adivinado: la respuesta est en el cdigo Visual Basic que permite funcionar al botn. En esta seccin, abriremos el procedimiento de evento de Visual Basic para el botn Agregar registro. Al hacerlo, ver por primera vez la ventana Visual Basic, ventana que contiene todas las herramientas y las rdenes que per- miten crear cdigo Visual Basic para Access u otras aplicaciones de Microsoft Office. Despus de explorar el cdigo Visual Basic del procedi- miento, escribiremos nuestra primera lnea de cdigo, realizando una peque- a mejora en el cdigo creado por el asistente.

    Abra el formulario Contactos

    i En el formulario Panel de control principal, pulse IntroducirNer contac- tos.

    Aparecer el formulario Contactos mostrando el primer registro.

  • Cudigo pustal Pais

    Aqu aparece el botn que creamos con el Asistente para botones de comando

    Abra el procedimiento de evento en Visual Basic

    A continuacin, observaremos el procedimiento de evento que hace posible que el botn Agregar registro funcione.

    kit 1. Pulse el botn Vista Diseo. V~sta Ahora le diremos a Access que abra el procedimiento de evento del bo- Diseo tn en Visual Basic.

    2, Desplcese hacia abajo hasta que vea el pie del formulario. 3. Con el botn derecho del ratn, pulse el botn Agregar registro.

  • 4. Seleccione Generar evento. La orden Generar evento le indica a Access que abra la ventana Visual Basic y muestre el procedimiento de evento predeterminado para el ob- jeto seleccionado. Para un botn de orden, ese procedimiento de evento es el procedimiento de evento Click, por lo que la ventana de cdigo de Visual Basic muestra el procedimiento AgregarRegistro-Click.

    r Siempre que pide ver el cdigo de la aplicacin aparece la ventana Visual Basic

    Una ventana de cdigo muestra el procedi- miento que ha pedido a Access que abra

    Observe la ventana Visual Basic -explore los mens y pase por los boto- nes de la barra de herramientas para ver sus pistas. Aqu es donde va a pasar bastante tiempo mientras aprenda ms sobre la programacin en Access.

    Visualizacin del cdigo Visual Basic que hay detrs de la aplicacin

    Cada aplicacin de bases de datos de Access dispone de un proyecto de Visual Basic que mantiene todo el cdigo de Visual Basic. Cuando se ve o ejecuta por primera vez cdigo de una base de datos Visual Basic abre el proyecto asociado. Los proyectos, a su vez, contienen mdulos, cada uno manteniendo cdigo con diversos propsitos. La ventana Proyecto, que por defecto se muestra en la esquina superior izquierda de la ventana Visual Basic, proporciona una tabla de contenidos sobre los mdulos de la aplicacin.

  • La ventana Proyecto muestra una lista de todos los mdulos que pueden contener cdigo Visual Basic para la aplicacin

    F~rm~Switchboard Form-Tipos de contactos Mdulos de formularios e informes

    ,P Report-Contactos por ciudades ,P ReportListado alfabetico de contact O ReportResumen semanal de llamad

    Mdulo estndar

    Cada formulario y cada informe de una base de datos tienen asociado su pro- pio mdulo de formulario o mdulo de informe para guardar el cdigo Visual Basic -por ejemplo, el cdigo creado por el asistente para nuestro botn se encuentra guardado en el mdulo de formulario del formulario Contactos. La mayor parte del cdigo Visual Basic que escribamos pertenecer a un for- mulario o un informe individuales; no obstante, si escribimos cdigo aplica- ble a ms de un formulario o informe, podremos guardarlo en uno o ms m- dulos estndar, mdulos aparte que agrupan cdigo para diferentes propsitos.

    Nota Cuando visualizamos mdulos de formulario o de informe o cuando leemos acerca de ellos en la documentacin de Access, es posible que los en- contremos referenciados como mdulos de clase (class module). Por lo que respecta a este libro no es necesario preocuparse por el significado de esta frase (est tomada de la terminologa utilizada en la orientacin a objetos en Informtica); nos basta con recordar que los mdulos de formulario y de in- forme, a diferencia de los mdulos estndar, pertenecen a la categora ms amplia de los mdulos de clase.

    En los mdulos de la aplicacin, el cdigo de Visual Basic se agrupa en uni- dades denominadas procedimientos, cada uno de los cuales realiza una tarea especfica -por ejemplo, el cdigo que responde a una pulsacin del botn Agregar registro es un procedimiento. Un mdulo puede contener muchos procedimientos, uno por cada evento al que queramos contestar o tarea que queramos realizar.

  • Una mirada ms detenida al procedimiento de evento del botn

    Fijmonos en el procedimiento de evento que el Asistente para botones de comando ha creado para el botn Agregar registro. La primera vez que se abre un mdulo, Visual Basic muestra todos los procedimientos del mdulo: si nos desplazamos arriba y abajo por la ventana Cdigo veremos otros pro- cedimientos de Visual Basic que el Asistente para bases de datos cre en el formulario Contactos. Para simplificar la visualizacin se puede pasar del modo Ver mdulo completo al modo Ver procedimiento, de forma que en la ventana Cdigo se muestren los procedimientos de uno en uno. i Pulse el botn Ver procedimiento (situado en la esquina inferior izquier-

    da de la ventana Cdigo).

    DoCmd.GoToRecord , , acNewRec

    ~xit-~gregar~egistro-click: Procedimiento del evento Clic

    Err BgregarRegistro-Click: para e/ botn MsgBox Err.Description Resume Exit-AgregarRegistro-Click

    Agregar registro

    Botn Ver procedimiento

    Ahora en la ventana slo se muestra un procedimiento de evento, el proce- dimiento AgregarRegistro-Click. El cdigo Visual Basic de este procedimiento se ejecuta automticamente cada vez que se pulsa el botn Agregar registro. El principal atractivo de este procedimiento es la siguiente lnea de cdigo Visual Basic, que le indica a Access que pase al nuevo registro:

    Separemos esta lnea parte por parte para entender su funcionamiento. Mien- tras lo hacemos aprender unos cuantos trminos importantes. i Las palabras que Visual Basic reconoce como parte de su lenguaje de

    programacin se denominan palabras clave. Existe una palabra clave por cada instruccin, funcin, mtodo, objeto y propiedad que utilizamos en Access.

  • i La primera palabra clave de la lnea es DoCmd (por Do Command, realizar orden), que aparecer continuamente cuando programemos Ac- cess. DoCmd es un objeto -comparte esta honrosa distincin con otros objetos a los que estamos ms acostumbrados, como los formularios, in- formes y controles. El objeto DoCmd se utiliza para realizar acciones ha- bituales de la interfaz de Access, como abrir un formulario, imprimir un informe o seleccionar una orden de men.

    i La segunda palabra clave es GoToRecord, un mtodo para el objeto DoCmd. Todos los objetos que reconoce Access tienen su propio conjun- to de mtodos que utilizaremos con dicho objeto. Los mtodos del obje- to DoCmd son todas las acciones que nos permite realizar -de hecho, si ya ha creado macros en Access, reconocer las acciones que puede reali- zar con el objeto DoCmd como acciones de macro disponibles en la ven- tana Macro. El mtodo GoToRecord, como su nombre sugiere (ir a re- gistro), le indica a Access que se desplace a un registro especfico del conjunto de registros actual.

    i Para ejecutar un mtodo sobre un objeto, como el objeto DoCmd, escri- biremos el nombre del objeto seguido inmediatamente por el mtodo, se- parando ambas palabras con un punto.

    i Lo que sigue al mtodo GoToRecord son sus argumentos, que proporcio- nan toda la informacin necesaria para ejecutar el mtodo. Los argumen- tos del mtodo GoToRecord, por ejemplo, nos permiten especificar op- ciones tan importantes como cul ser el registro al que pasaremos. Los argumentos se escriben a continuacin del mtodo, dejando un espacio

    . en blanco y separando los valores de argumento con comas. Si no es ne- cesario especificar el valor de uno o ms argumentos, podemos dejarlos en blanco escribiendo una coma por cada uno -por ejemplo, la lnea an- terior omite los dos primeros argumentos, indicando nicamente el ter- cero de ellos.

    i Algunos mtodos, como GoToRecord, tienen valores constantes defini- dos especialmente para ser introducidos como argumentos. El argumen- to acNewKec es una constante que indica al mtodo GoToRecord que se desplace al nuevo registro al final del conjunto de registros actual (otras opciones permiten desplazamientos al primer registro o al registro si- guiente). La constante acNewRec corresponde en realidad al nmero 5 -aunque resulta mucho ms sencillo recordar el nombre de la constante y se facilita la lectura del cdigo.

    En resumen, esta lnea de cdigo utiliza el mtodo GoToRecord del objeto DoCmd para desplazarse al registro especificado -en este caso, a un nuevo registro.

  • Aunque en realidad es la lnea DoCmd estudiada la que realiza el tra- bajo en el procedimiento AgregarRegistro-Click, puede que se pre- gunte para qu sirve el resto del cdigo generado por el Asistente para botones de comando. Este es el procedimiento completo: Private Sub AgregarRegistro-Click()

    On Error GoTo Err-AgregarRegistro-Click

    DoCmd . GoToRecord , , acNewRec

    Exit-AgregarRegistro-Click:

    Exit Sub

    Err-AgregarRegistro-Click:

    MsgBox Err.Description

    Resume Exit-AgregarRegistro-Click

    Las lneas Private Sub y End Sub definen el comienzo y final del proce- dimiento. Veremos lneas similares en todos los procedimientos de even- to -aunque como Visual Basic las aade automticamente a todos los

    ocedimientos, no tendremos que preocuparnos por ellas. restantes lneas del procedimiento -salvo la lnea de DoCmd- pro-

    rcionan la gestin de errores para el procedimiento. El Asistente para botones de comando incluye estas lneas de gestin de errores para que, en aso de producirse un error, la aplicacin no se detenga. En el Captulo 7

    aprenderemos a aadir nuestro propio cdigo para la gestin de errores en las aplicaciones; por ahora, dejaremos que el asistente se encargue de ello.

    MODIFICAC~N DE UN BOTN DE ORDEN CREADO CON EL ASISTENTE El Asistente para botones de comando es una estupenda herramienta para personalizar nuestras aplicaciones, pero no es perfecta. A pesar de que crea botones para una gran variedad de tareas, no puede prever todas las acciones que podamos querer llevar a cabo. Afortunadamente, si el asistente no logra ajustarse exactamente a nuestras necesidades, podemos modificar manual- mente los botones que haya creado para que se ajusten a nuestros deseos.

  • Esto es exactamente lo que vamos a hacer en esta seccin con el botn Agre- gar registro. No hay nada errneo en el botn Agregar registro -cuando lo pulsamos, salta al nuevo registro del conjunto actual- aunque puede depurarse un poco su funcionamiento. Para hacerlo, modificaremos primero una propie- dad y despus aadiremos una lnea de cdigo Visual Basic al procedimien- to de evento del botn.

    Aada un acelerador de teclado al botn de orden

    Al botn Agregar registro le vendra bien una sencilla y til caracterstica que poseen otros botones del formulario Contactos. El resto de los boto- nes incluyen aceleradores de teclado -caracteres subrayados que nos permiten

  • Vista Formulario

    4. En el cuadro de propiedad Ttulo, pulse en el borde izquierdo del texto Agregar registro (antes de la A>>) y escriba &. El smbolo ampersand (&) le indicar al asistente que la letra A de Agregar registro ser la tecla aceleradora del botn. De esta forma, el usuario podr pulsar ALT+A para obtener el mismo resultado que si pulsa el botn Agregar registro. El botn no mostrar el ampersand, sino que la letra A aparecer subrayada en el botn.

    mato ] Datos \ Eventos 1 Ottas mbre . . . . . . . . . . . . . . . . . . . . . . uio . . . . . . . . . . . . . . . . . . . . . . . -cien . . . . . , . . . . . . . . . . . . . iriinguna) .......

    . . . . . . . . . . . . . . . . u de imagen , ............

    ente. . . . . . . . . . . . . . . . . . N,? .....

    minado . . . . . . . . . . . . . . . . 1'1'3 . . . . . . . . . . . . . . . . . . . rlu

    .... ..............

    n aiikomtica . . . . . . . . . . . . l lo .............................. ...... ...v......

    la batra de estadn . . . . . . . hipsrvinculn . . . . . . . . . . de hpet vncub . . . . . . .

    5. Cierre la hoja de propiedades.

    Utilice la tecla aceleradora para pulsar el botn de orden

    1. Pulse el botn Vista Formulario en la barra de herramientas. 2. Pulse ALT+A.

    Access se desplazar al nuevo registro de la tabla Contactos, igual que si hubiramos pulsado el botn con el ratn.

    Aada una lnea al procedimiento de evento para cambiar el foco

    El botn Agregar registro necesita otra modificacin. Observe que despus de pulsar el botn, el foco sigue estando en el botn Agregar registro -no hay ningn punto de insercin o campo en el que escribir los datos. Para po- der introducir los datos, el usuario deber pulsar primero en el campo Nom- bre del formulario. Lo ideal sera que el foco pasara automticamente al pri- mer campo del registro. Para ello escribiremos una lnea de cdigo Visual Basic.

  • Despus de pulsar - el botn Agregar

    registro ...

    ... nos interesa que el foco pase al primer campo, para que el usuario pueda empezar a introducir los datos

    1. Vuelva a Visual Basic (en la barra de tareas de Windows, pulse el botn Microsoft Visual Basic - Cap02 Contactos). Visual Basic todava muestra el procedimiento de evento AgregarRegis- tro-Click.

    2. Pulse en la lnea en blanco que se encuentra debajo de la lnea DoCmd en el procedimiento de evento, pulse TAB y escriba Nombre. Nombre es el nombre de un objeto de control de nuestro formulario. (Asegrese de escribir los nombres de objetos tal cual se indique -sin incluir espacios adicionales.) A continuacin, especificaremos el rritodo que deseamos utilizar con el objeto Nombre: el mtodo SetFocus. Como ya vimos anteriormente, un punto separa al mtodo de su objeto. Escriba un punto y a continuacin Set. Cuando escribimos un punto despus del nombre de un objeto, Visual Basic supone que a continuacin deseamos escribir un mtodo o una propiedad de ese objeto. Para ayudarnos a escribir un mtodo o una pro- piedad vlido, muestra una lista debajo de la lnea en la que estamos es- cribiendo. Segn escribimos, la lista se desplaza hacia abajo automtica- mente para mostrar las entradas que empiezan por las mismas letras que hemos escrito.

  • Private Sub BgregarRegistro-ClickO n Error GoTo Err-AgregarRegistro-Click

    - Visual Basic ayuda a escribir el cdigo mostrando en una lista las propiedades y los mtodos del objeto

    Escribir Set fue suficiente para que el mtodo SetFocus apareciera en la lista. La forma ms sencilla de introducir el elemento seleccionado en la lista es pulsar la BARRA ESPACIADORA, aunque tambin se puede optar por seguir tecleando el cdigo o por pulsar dos veces sobre cualquier mto- do o propiedad de la lista.

    4. Pulse la BARRA ESPACIADORA y a continuacin pulse INTRO. Ahora la lnea de cdigo Visual Basic est completa:

    Nombre. SetFocus

    Esta lnea le indica a Access que pase el foco al objeto formulario o con- trol especificado - e n este caso, al control Nombre. Aqu est el procedimiento con la nueva lnea de cdigo.

    n Error GoTo ~rr-Bgregar~eiistro-click

    DoCmd.GoToRecord , , acNewRec Notrhre. SetFocus

    Exlt~AgregarRegi~tro~C1ick:

    Err~AgregarReglstro~C1ick: MsgBox Err.Description Resume Exit-AgregarRegistro-Click

  • Pruebe el botn de orden

    1. Vuelva a Access (pulse el botn Ver Microsoft Access en la barra de he- rramientas).

    Ver 2. Pulse el botn Agregar registro. Microsofi Access Access pasar al nuevo registro en la tabla Contactos. Esta vez, sin em- . -.

    bargo, observar que el punto de insercin se encuentra parpadeando en el campo Nombre, listo para que comencemos a introducir datos.

    A medida que vayamos depurando la aplicacin, podremos utilizar el mto- do SetFocus siempre que queramos anticipar lo que los usuarios vayan a ha- cer a continuacin. El paso a un formulario o un control mediante el mtodo SetFocus es una forma extraordinaria de ahorrar pulsaciones al usuario -lo que facilitar el uso de la aplicacin.

    Guardar

    Puede que haya observado que es posible modificar el procedimiento de evento Click mientras el formulario Contactos est en la vista For- mulario --en cierto sentido, hemos modificado el diseo del formula- rio sin pasar a la vista Diseo. Esta caracterstica es nica de Visual

    normalmente, no tendremos por qu reiniciar una compleja aplicac para poder realizar algunos cambios menores.

    dremos apreciar el hecho de qu tantemente de la vista Diseo

    Guarde las modificaciones realizadas al botn Agregar registro

    Ahora que hemos terminado de modificar el botn, debemos guardar los cambios. i Pulse el botn Guardar de la barra de herramientas.

    Access guardar los cambios en el formulario y en el mdulo de formu- lario.

  • APLICACIN POR OMISIN DEL MODO SLO-LECTURA A UN FORMULARIO

    Si escribimos en cualquiera de los campos del formulario Contactos, estare- mos editando el conjunto de registros. Esta es una de las grandes ventajas de Access sobre la mayora de los sistemas de bases de datos: los datos estn casi siempre disponibles tanto para su visualizacin como para su modifica- cin. No obstante, los usuarios de empresas suelen estar preocupados porque no se revuelva la informacin de una base de datos -sus datos son im- portantes y no desean que sea demasiado fcil modificarlos. En esta seccin, modificaremos el formulario Contactos para proporcionar una solucin a este requisito habitual a la hora de introducir datos. La idea es hacer que el modo por omisin de un formulario sea slo-lectura, para que los usuarios no puedan realizar modificaciones a menos que lo indiquen ex- plcitamente. De esta forma, los usuarios podrn abrir el formulario y con- sultar la informacin sobre contactos sin preocuparse por posibles modifica- ciones accidentales. El primer paso es sencillo: para hacer que un formulario sea de slo-lectura, bastar con asignar a la propiedad Permitir ediciones el valor No. Pero en- tonces necesitaremos una forma de permitir al usuario solicitar dichas mo- dificaciones. Lo que nos interesa es un par de botones adicionales en el for- mulario: uno para indicar que queremos editar los datos y otro para guardar el registro que se ha editado. Para uno de estos botones, evitaremos utilizar el Asistente para botones de comando - e n lugar de ello, crearemos el botn por nuestra cuenta y escribiremos despus un procedimiento de evento de Visual Basic para que el botn funcione.

    Primero haremos que por omisin

    el formulario sea de slo-lectura ...

    TIM de conta