Repetir Macro en Excel

Hola estoy creando una macro en excel y quiero que se repita en todas la hojas del libro, todas las hojas son iguales y contienen los mismos datos por tanto la funcionalidad de la macro es idéntica.. Hasta ahora solo consigo que me funcione en una hoja no encuentro la manera de que lo haga en todas esta es más o menos mi macro:
Sub reemplazar()
Dim Hoja As Worksheet
Dim rango As Range
For Each Hoja In Worksheets
For Each rango In ActiveSheet.Range("G:G")
Select Case rango
Case "A CORUÑA"
x = 1
GoSub cambio
Case "ACEBEDA, LA"
x = 2
Asi se van sucediendo las poblaciones hasta el final de la macro
Columns("G:G").Select
Selection.NumberFormat = "0"
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("G1").Select
End Select
Next
Next
Exit Sub
cambio:
rango.Replace What:=rango.Value, Replacement:=x, LookAt:=xlWhole, _
SearchOrder:=xlByColumns
Return
End Sub
Bueno pues no consigo que se repita, creo que más o menos esta trazado el procedimiento pero me debe faltar alguna cosa ...
Os agradezco de antemano la ayuda a todos.. Un Cordial saludo.
Miguel

1 respuesta

Respuesta
1
En primer lugar que la macro esté en un módulo.
Y además te falta 'seleccionar' la hoja. Agregá la línea marcada entre tus 2 instrucciones:
For Each Hoja In Worksheets
Hoja.select
For Each rango In ActiveSheet.Range("G:G")
El resto no está probado, cualquier otra dificultad en esta rutina escribime nuevamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas