You are on page 1of 6

MACROS EN EXCEL

ParteIII
Hola amigos,estamosde nuevo aquí para mosfar la terceraparte de Guía de Macros en Excel que te será de gran utilidad, ya que se manejaranConsultas en los Formularioso ¡ccesos a las Macros desde Excel sin necesidad de entrar a Visual Basic y algunos mótodos de trabajar mas fácil. De antemanomuchasgracias por apoyar este curso de Excel creo que les ha servido,no habíatenido mucho tiempo para escribir estaterceraparte pe¡ocreoqueya esta... !Mucho Animol!!. ..., ELABORANDO UNA CONSULTA Todo Registro de informacién debede tener su propia Consulta, Baja y Modificacién, es por eso que en este nuevo capitulo nos concentramos ello, primerunente en poder en consult¡r la información que ya se escribió en la Eoja de Excel, obüamenúe desdeuna Macro combinada con Visual Basig observemos siguienteejemplo: el FaseI 1. Presione TeclasAlt + F11, püa enlar al editor de Visual Basic. La 2. Activa las siguie,ntes opciones: o De clic en el Menú Ver y elija la opción Explorador de Proyectos . De clic en el Menú ver y elija la opción Ventana Propiedades 3. Del Menú Insertar elija la Opción UserForm. Esto inserta el Formulario que progr¿rmaremos controles.En el Explorador de Proyecto se observara con que se insertoel UserForm. Alora crearas formulario con el sieuienteasoecto: un

Cúns,ftC

Bafat

el formulario tendrá:
a a a

Tres T Tres Botonesde

Los datosque se preguntaran seranNombre. Select TextBox3 : ActiveCell tl. l). End Sub BOTON BAJA Private Sub Comrr¡andButton2_Click$ EntireRow. Lookln :dFormulas.Offset(0.Find si de de encuentra Nombre de la persona muerrea la siguientecolumnay la líneaTextBox2 : el se ActiveCell Permitecapturarel valor de la celdaal Textbox2 y así mostrarel datode la celdaen el TextBox2.Offset(0. Delete Selection. yo trabajocon el Word 2000 o XP y no tengoeseproblema Peroestosesolucionaría con una trarnpade error.Baja podrá eliminar algun dato que se consultoy no lo queremos.Select permitemoverseuna columna la a la derech4por lo tanto después la búsqueda las primeraslíneascon Cell.e¡ri Cadavez que se escribala líneaActiveCell. Los tres botonesnos servirán para lo siguiente: Consultar consultarala información que hayamos insertado desdeel botón insertar. I ). Direcciór y Telófono. fnsertar tendrála función de insertarlos registrosque vayamosdandode alt4 es como los ejercicios anteriores.Find estopuedeocurrir en el Word 97.Offset(0. I ).e. Select TextBox2 : ActiveCell lii'.Offset(0.r:ri¡ el nombreque tratasde consultarno se encuentra podríagenerarun srror porque Si fallaúa el Cell.Select TextBoxl : Empty TextBox2 : Empty TextBox3 : Empty TextBoxl. :=xlPargSearchOrder::xlByRows. l).SetFocus End Sub . A continuación se muestra como se deben de programar estos Controles: Programacién los Controles: de BOTON DE CONSULTA PrivateSub CommandButton i_Click$ Find(Whd ::TextBoxl. li.Activate ActiveCell. SearchDirection::xlNoct MatchCase:: _ False). LookAt _ Cells.Setect significa que setiene que moverseuna columnaa la derecha. Aft er:=ActiveCell.u¡rlínea que contieneel ActiveCell. AcüveCell. Range("A'9").

que te parecetodavíamascorta Sange(". ..SetFocus End Sub CUAI}ROS DE TEXTO Pnvate SuLr TextBox1_Change() Range("A9")^FormulaR : TextBoxl I Cl rrrnr estaprimer líneareemplaza estas a dos.Select ActiveCell.FormulaRlC 1 : TextBox3 End Sub Si con el Botén Consulta tienes un error cuando no encuentraa la person4 entonces tendrasque agregarestoa tu codigo del Botón Consultar . .FormulaRlCl:TedBoxl I Rcemplaa estasdos üneas Priv-ate Sub TextBox2_Change() Rang{"89').FormulaRl Cl : TextBox2 End Sub PrivateSub TextBox3_Change$ Range(" C9")..BOTON INSERTAR PrivateSub CommanclButton3_Click$ Rang{'49"). FormulaRlC I : TextBoxl: End Sub I Comentario [l^aónl]: Rang{": I A9').Select Selection.Insert TextBoxl : Empty TextBox2:Empty TextBox3:Empty TextBoxl.{9'i).. EntireRow.

Offset(0. LookAt Cells. 1).yesquivara cometecualquiererror Excel se dirigirá a la etiqueta error.:¡. SearchOrder::xlByRows. ActiveCell. Aft er:=Activdell. MatchCase::SearchDirection::xlNext. diferenciaesque se asignanlos valoresa variablesy después descargan a los TextBoxs.Select TextBox3 : ActiveCell R.Select Direccion= Activecell 1).Activde ActiveCell.arr€stf. False).líneagenerauna trampade error si Excel encuentra error se le dice que sevaya en el código. L).em Tambiénsepuedeutilizar estecódigoparaleer la informaciónde las celdaslo que se La esta€n azt¿L. Lookln: :xlFormulas. Find(Whd ::Tef Boxl. 1).Select TextBox2 : ActiveCell ActiveCell. Telefono= Activecell TextBox2: Direccion 'fexfBox3 : Telefono noencontro: i'r.hastauno que ustedcometaen la programación.O ffset(0.Select ActiveCell.No usela trampade a la etiquetanoencontro que estadefinidamas adelante si a error si no tiene problemasa la hora de que no encuentra la personaRecuerde usted cualquier noencontno.'o AOri seesquivael error End Sub Quete parecees increíblecomo una Macro combinadacon Visual Basic puedehacerhasta lo imposible .Offset(0. ::xlPart.Offset(0.BOTONDE CONSULTA PrivateSub CommandButtonl Clicko On Error Goto noencontro un i-l.

.estoquieredecir que en el modulo estamos escribiendo código de una m¿rcro permitirá cargar formula¡io desdeExcel sin el que el necesidad entar al Editor de Yisual Basicde Si te fija gn el exploradorde proyectoaparece el que creamos EuroTool VBAProlcrt {t! Micreoft i {l ru¡ar j EnFbjaz 0bJetos l) E t:r H si queremos volver al formulario solo da doble clic en UserÍ'orml .Show I a primer línea significa que ca.ahoraaccesaremos un de al formulario desde Excel sin necesidad entraral Editor de visu¡l Basic. a la segunda línea significa que lo muestre. de Pararealizw esteejerciciodebemos permanecer dentrodel Editor de Visu¡l Basic para poderintroducir el código en un Modulo.Buenoya tenemoselaborado ejerciciode consultas datos.Show End Sub Usted deberáescribir las dos líneasque estánen medio que son: Load UserForml UserForml.rgue la memoriael formulario que sellama UserForrnl. por lo tsrto deberas seguirlos siguientes puos { De clic en el Menú fnsertar y elija la opción Modulo r' Escriba dentro del Modulo el nombre del modulo en estecasoFtllilftñll CuandoustedescribaSub Entradaaparecerá la siguientemanera: de SubEntradaQ Load UserForml UserForml.

es obvio la única que hicimos De Clic en Aceptar De clic fuera de la imagenen cualquiercelday listo si presionas imagen cargara la el formulario. por en ejemplo: { r / { r' { { / Declic en el Menú Insertar Elljala opciónImagen. De clic derechosobrela Imagen Ehjalaopción Asignar Macru De clic e. . podemosinsertaruna imageno un botón o cualquiergrafico.nla Macro que se llama Entrnda. del r' De clic en el Menú Archivo del Editor de Visual Basic I Elija la opción Cerrar y volver a Microsoft Excel Ya que estamos Excel.Buenoya estalisto ahorasalgamos Editor de Yisual Basic y volvamosa Excel. seguidopor Imagen Prediseñada insertecualquierimageny deleel tamañoque usteddesea.