Excel

Páginas: 11 (2701 palabras) Publicado: 3 de mayo de 2011
http://excelavanzado.com/trucosmacros.htm
Auto_Open() y Auto_Close()
Existe una macro de autoarranque que se ejecuta cuando se abre el libro. Se llama auto_open().
Y existe otra que se ejecuta justo antes de cerrar el libro que se llama auto_close().

Sub Auto_Open()
Dim hora As Double
Dim saludo As String
hora = (Now - Int(Now)) * 24
Select Case hora
Case 6To 14
saludo = "Buenos días"
Case 14 To 21
saludo = "Buenas tardes"
Case Else
saludo = "Buenas noches"
End Select
MsgBox saludo & " Amo"
End Sub

Equivalente a auto_open existe otra macro Workbook_Open, pero ésta ha de ser guardada no en un módulo normal, sino en ThisWorkbook. Pruebe lo siguiente:

El siguienteprocedimiento permite abrir automáticamente el libro Balance.xls al abrir el libro Informe.xls. El procedimiento ha de estar en ThisWorkbook del libro Informe.xls.

Sub Workbook_Open()
'Apertura de libro Balance
Workbooks.Open Filename:="C:/Temp/Balance.xls"
'Activación del libro Informe
Windows("Informe.xls").Activate
End Sub Blog

2 Saludo al arrancar
Crear un libro Personal.xlscomo se ha indicado anteriormente con la macro de autoarranque siguiente:

Sub Auto_open()
MsgBox ("Que tengas un buen día")
End Sub

Esta macro creada en el libro Personal.xls hace que al iniciar Excel nos salga un mensaje saludándonos.
3 Nombrar Hoja desde una celda
Esta macro permite asignar el nombre que pongamos en la celda A1 como nombre de la Hoja actual.

SubNombreHoja()
ActiveSheet.Name = Range("A1").Value
End Sub
4 Exportar un módulo
1. Pase al editor de visual basic y active el módulo a exportar.
2. Seleccione Archivo/ Exportar archivo. Aparece un cuadro de diálogo.
3. En cuadro de edición Nombre de Archivo, teclee el nombre para el archivo donde se guardará el
módulo, por ejemplo "General.Bas", observe que .BAS es la extensión de estos archivos.4. Pulse sobre el botón Guardar.
5 Importar un módulo
1. Active el editor Visual Basic.
2. Seleccione Archivo/ Importar Archivo. Aparece un cuadro de diálogo.
3. Seleccione en la lista Buscar en: la carpeta donde tiene ubicado el archivo a importar.
4. Una vez localizada la carpeta, seleccione el archivo a importar (General.Bas en el ejemplo) y pulse
sobre Abrir.
6 La cláusula PrivatePuede anteponer la cláusula private a todos los procedimientos y funciones que sean llamados sólo desde
el mismo módulo, es una forma de ahorrar memoria y hacer que el programa corra un poco más rápido. Si
necesita llamar un procedimiento o función desde otro módulo, nunca debe precederlo por la cláusula
private, recuerde que esta cláusula restringe el ámbito de utilización de un procedimientoa su propio
módulo.
7 Inspección rápida de variables
Cuando ejecuta un programa paso a paso, si sitúa el puntero de ratón sobre una variable, se muestra el valor de la misma.
8 Modificar el valor de una variable en tiempo de ejecución
A veces resulta interesante cambiar el valor de alguna variable cuando se está ejecutando el programa,
para ver que ocurre si coge determinados valores, paraterminar un bucle, etc.
Para ello agregue a la ventana de inspección la variable que desee cambiar, cambie su valor sobre la propia ventana de inspección y continúe la ejecución del programa.
9 Ventana Inmediato
Puedes inspeccionar variables desde esta ventana anteponiendo la palabra print antes de la variable, o el signo ?.
10 Debug.Print
Esta expresión permite efectuar la depuración delprograma de forma más cómoda. Se introduce en un programa antecediendo a una variable que se desea comprobar en la ventana Inmediato. De esta forma conseguiremos ver todos los valores que toma la variable cada vez que el programa pasa por este comando. Se ven en la Ventana Inmediato [Ctr+G].
.
Ejemplo:
Sub Dos_a_la_diez()
Dim i As Integer
Dim t As Integer
t = 1
For i = 1 To...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Excel
  • Excel
  • Excel
  • Excel
  • Excel
  • Excel
  • Excel
  • excel

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS