gustavomeeuwes
New Member
- Joined
- Aug 13, 2010
- Messages
- 46
Hola de nuevo !!! Preguntando otra vez...
Tengo una serie de macros que son repetitivas en las instrucciones, salvo en el caso de los valores de unos rangos.
Adjunto ejemplo:
Los valores que cambian son los indicados en rojo.
Quería saber como hacerla con Dim & String o Value (No tengo idea) para que quede algo así:
Así solo cambio los valores y ejecuto la macro "genérica".
Espero haber sido claro.
Unavez más gracias por vuestra ayuda.
Saludos
Gustavo
Tengo una serie de macros que son repetitivas en las instrucciones, salvo en el caso de los valores de unos rangos.
Adjunto ejemplo:
Code:
Sub DG_Ocup_Cerrar()
ActiveSheet.Unprotect
Range("[COLOR=red]C40[/COLOR]").Select
Sheets("Hoja5").Visible = True
If ActiveCell.MergeCells Then
Sheets("Hoja5").Select
Range("[COLOR=red]I3:J21[/COLOR]").Select
Selection.Copy
Sheets("Hoja2").Select
Range("[COLOR=red]B40[/COLOR]").Select
ActiveSheet.Paste
End If
Sheets("Hoja5").Select
Sheets("Hoja5").Visible = False
Sheets("Hoja2").Select
Range("[COLOR=red]C48[/COLOR]").Select
ActiveSheet.Protect
End Sub
Los valores que cambian son los indicados en rojo.
Quería saber como hacerla con Dim & String o Value (No tengo idea) para que quede algo así:
Code:
Sub DG_Ocup_Cerrar()
[COLOR=red] DIM[/COLOR]
[COLOR=red] Value1 = Hoja2 "C40"[/COLOR]
[COLOR=red] Value2 = Hoja5 "I3:J21"[/COLOR]
[COLOR=red] Value3 = Hoja2 "B40"[/COLOR]
[COLOR=red] Value4 = Hoja2 "C48"[/COLOR]
[COLOR=red] Application.Run "Cerrar"[/COLOR]
End Sub
Sub Cerrar
ActiveSheet.Unprotect
Range("[COLOR=red]Value1[/COLOR]").Select
Sheets("Hoja5").Visible = True
If ActiveCell.MergeCells Then
Sheets("Hoja5").Select
Range("[COLOR=red]Value2[/COLOR]").Select
Selection.Copy
Sheets("Hoja2").Select
Range("[COLOR=red]Value3[/COLOR]").Select
ActiveSheet.Paste
End If
Sheets("Hoja5").Select
Sheets("Hoja5").Visible = False
Sheets("Hoja2").Select
Range("[COLOR=red]Value4[/COLOR]").Select
ActiveSheet.Protect
End Sub
Así solo cambio los valores y ejecuto la macro "genérica".
Espero haber sido claro.
Unavez más gracias por vuestra ayuda.
Saludos
Gustavo