Inicio > Microsoft Excel > elsamatilde > Ejecutar macro para varias hojas

Ejecutar macro para varias hojas

Experto:
Usuario:
Fecha: 04/03/2008
Valoración: (5,00 sobre 5) Categoría: Microsoft Excel
01/03/2008
arcan87, usuario preguntando en Microsoft Excel
Usuario
Saludos. Mi problem es q tengo mi fomulario pero que solo afecta a una hoja.
Como puedo hacer para q afecte solo a 4 hojas a la ves.
 Sin necesidad de activar hoja por hoja y ejecutar el formulario 4 veces
01/03/2008
arcan87, experto respondiendo en Microsoft Excel
Experto
Hola:
Quizás debieras explicar un poquito más de qué se trata lo de 'afectar' a 4 hojas.
Será que quieres tomar datos, o copiar en las hojas ???

Espero tus aclaraciones
Elsa
http://es.geocities.com/lacibelesdepunilla/macros
03/03/2008
arcan87, usuario preguntando en Microsoft Excel
Usuario
Muchas gracias por el interes el problema es q hize mi formulario con macros pero cuando lo corro hace la rutina solo para la hoja activa. pero este formulario quiero que haga la misma rutina para 4 hojas mas.
ejemplo :Una macro q primero cambie el formato en la hoja1 pase a la hoja 3 de ahi ala hoja 7 con solo apretar un boton.
Un favor mas en mi formulario tengo 2 botones como haria para q despues de recorrer las hojas ejecutando la macros regrese a la hoja 1 para apretar el segundo boton para q recorra de nuevo pero con otra macro.
Muchas gracias anticipadamente
 
 
 
04/03/2008
arcan87, experto respondiendo en Microsoft Excel
Experto
Bien, en primer lugar la rutina debe hacer referencia a las hojas como ActiveSheet y no por su nombre, cuando sea necesario.
Por ej: si dice:  Range("A5").Font.-----  está bien, pero si menciona la hoja lo debés modificar y dejar:
ActiveSheet.Range("A5").Font......
La rutina tiene que estar en un módulo. Y desde el botón de tu formulario las instrucciones son:
Private Sub boton1_click()   'esto es solo ejemplo, será el nbre de tu botón.
Call rutina_formato
Sheets("Hoja3").select  'ajustá el nbre de tu hoja
Call rutina_formato
Sheets("Hoja7").Select
call rutina_formato
'regresa a la hoja 1
Sheets("Hoja1").select
End Sub
Si serán muchas más hojas se podrá hacer un bucle para no repetir tantas veces las mismas instrucciones, pero creo que con esto bastará. Cuando vuelva a la Hoja1 te devolverá el control al formulario y podrás ejecutar el botón siguiente.
Saludos
Elsa
http://es.geocities.com/lacibelesdepunilla/macros
 
04/03/2008
arcan87, usuario preguntando en Microsoft Excel
Usuario
Muchas gracias elsa con eso diste en el clavo en mi problem gracias :)
Enlaces patrocinados