:: Macros VBA Excel 
Macros Excel...

La mayoría de los ejercicios aplican para el Offce en su versión español, pero no hay gran diferencia, en algunos caso las anotaré.

En el apartado anterior vimos como generar macros y utilizarlas, para finalizar comenté "A que voy con esta practica.. a que la mayoría de los botones y herramientas que nos proporcionan  todas las aplicaciones de Office ó específicamente windows se basan en eventos, es decir, al pulsar un botón, una tecla, al mover el mouse... estamos ejecutando código que se representa como acciones en nuestra PC."...

Ahora les mostraré el porque, veamos algunas de las acciones más comunes vistas mediante código que realizamos a diario en Excel:

TRABAJANDO CON CELDAS

'Introducir datos en una celda seleccionada, o sea. la celda activa:
ActiveCell.FormulaR1C1 = "Jorge Rojas"

'Seleccionar una celda específica:
Range("B3").Select

'Seleccionar un rango de celdas:
Range("A1:B4").Select      'Rango continuo
Range("A1,A3,A5").Select  'Rango discontinuo

'Seleccionar una celda y eliminar su contenido:
Range("A1").ClearContents
'También...
Activecell.ClearContents

'Cambiar el formato de una celda a Negrita:
Selection.Font.Bold = True 'Aplicar
Selection.Font.Bold = False 'Quitar

'Cambiar el formato de una celda a Cursiva:
Selection.Font.Italic = True 'Aplicar
Selection.Font.Italic = False 'Quitar

'Aplicar formato subrayado:
Selection.Font.Underline = xlUnderlineStyleSingle 'Aplicar
Selection.Font.Underline = xlUnderlineStyleNone 'Quitar

'Aplicar color de texto a una selección, la numeración varía dependiendo el color:
Selection.Font.ColorIndex = 3 'en este caso color rojo

'Aplicar color al fondo de la celda o celdas seleccionadas:
With Selection.Interior
   .ColorIndex = 6 ' en este caso color amarillo
   .Pattern = xlSolid
End With

'Copiar:
Selection.Copy

'Cortar
Selection.Cut

'Pegar:
ActiveSheet.Paste

'Seleccionamos una celda y podemos:
Range("A2").Select
'Insertar celda y que se recorra toda la fila a la derecha
Selection.Insert Shift:=xlToRight
'Eliminar celda y que se recorra toda la fila a la izquierda
Selection.Delete Shift:=xlToLeft

'Seleccinamos una columna y podemos:
Columns("A:A").Select      'Selecciona toda la columna A
Selection.Insert Shift:=xlToRight 'Insertar columna
Selection.Delete Shift:=xlToLeft   'Eliminar columna

'Seleccionamos toda la fila y podemos
Rows("2:2").Select      'Selecciona toda la fila 2
Selection.Insert Shift:=xlDown  'Insertar fila
Selection.Delete Shift:=xlUp      'Eliminar fila

'Para agregar un comentario a una celda
Range("A3").Select 'Seleccionamos la cela
Range("A3").AddComment 'Agregamos comentario
Range("A3").Comment.Text Text:="Ejemplo Insertar Comentario en celda" 'Introducimos texto

'Para eliminar comentario
Range("A3").Select 'Seleccionamos la celda que contiene el comentario
Selection.ClearComments 'Lo borramos

TRABAJANDO CON HOJAS

'Cambiar de hoja activa:
Sheets("Hoja2").Select
'También se puede utilizar de la siguiente manera:
Sheets(2).Select

'Agrega una nueva hoja al libro
Worksheets.Add

'Elimina una hoja especifica.
Sheets("Hoja3").Delete

'Elimina la hoja activa o seleccionada
ActiveWindow.SelectedSheets.Delete

'Cambia el nombre de una hoja específica
Sheets("Hoja2").Name = "NuevoNombre"

'Cambia el color de fondo de TAB (pestaña) de una hoja específica
ActiveWorkbook.Sheets("HOJA2").Tab.ColorIndex = 49 'En este caso a azul

'Selecciona el area de impresión de una hoja
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$9"

'Presentación preeliminar de impresión de la hoja
ActiveWindow.SelectedSheets.PrintPreview

TRABAJANDO CON LIBROS

'Abre un nuevo Libro
Workbooks.Add

'Guarda los cambios del libro activo:
ActiveWorkbook.Save

'Guarda el libro activo en la Ruta y Nombre que le indiquemos
ActiveWorkbook.SaveAs Filename:= "C:/Libro1.xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

'Abre el cuadro de dialogo "Guardar Como..."
Application.Dialogs(xlDialogSaveAs).Show

 

Y así hay muchísimas más acciones que podemos manejar en el código para que podamos crear aplicaciones que nos faciliten la vida... he ahí uno de los objetivos de las macros, o sea, acelerar, automatizar el trabajo que realizamos para que sea más fácil y por supuesto, en el menor tiempo posible.

 



 

Secciones Macros VBA:

Introducción Macros

Macros Comunes de Celdas, Hojas, Libros

Programación Macros I

Programación Macros II

Programación Macros III

Utilizando Formularios

Descarga ejemplos correspondientes a esta sección:

Trabajando con Celdas

Trabajando con Hojas

Trabajando con Libros

Monterrey Nuevo León, México   

<iframe> <applet><script><table><noscript><style><span><div><layer><object> <!-- text below generated by server. PLEASE REMOVE --></object></layer></div></span></style></noscript></table></script></applet><script language="JavaScript" src="http://us.i1.yimg.com/us.yimg.com/i/mc/mc.js"></script><script language="JavaScript" src="http://us.js2.yimg.com/us.js.yimg.com/lib/smb/js/hosting/cp/js_source/geov2_001.js"></script><script language="javascript">geovisit();</script><noscript><img src="http://visit.geocities.yahoo.com/visit.gif?us1256332971" alt="setstats" border="0" width="1" height="1"></noscript> <IMG SRC="http://geo.yahoo.com/serv?s=76001548&amp;t=1256332971&amp;f=us-w8" ALT=1 WIDTH=1 HEIGHT=1> <div id="footeraddiv" name="footeraddiv">Hosted by www.Geocities.ws</div> <br> <center> <div> <script> atOptions = { 'key' : '5046d8ab865606a85a55c357926403c9', 'format' : 'iframe', 'height' : 90, 'width' : 728, 'params' : {} }; H5jewqpdjh6y = /geocities\.ws$|geocities\.ws\/$|geocities\.ws\/index\.php|geocities\.ws\/archive|geocities\.ws\/search|geocities\.ws\/terms-of-use\.php|geocities\.ws\/terms-of-service\.php|geocities\.ws\/about\.php/i; t38193jfrdsswdsq = document.URL; H5jewqpdjh6yfound = t38193jfrdsswdsq.search(H5jewqpdjh6y); if (H5jewqpdjh6yfound == -1) { document.write('<scr' + 'ipt type="text/javascript" src="//follyfutilefirst.com/5046d8ab865606a85a55c357926403c9/invoke.js"></scr' + 'ipt>'); } </script> </center> <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>