Macro para ocultar y mostrar hojas
Publicado por Eduardol (35 intervenciones) el 12/06/2017 06:40:53
Hola.
Intento escribir una MACRO que muestre y oculte las hojas de mi libro de excel segun varien los calores de 2 celdas
entonces pensé en algo como esto
PERO NO FUNCIONA
QUE ESTA MAL?
Intento escribir una MACRO que muestre y oculte las hojas de mi libro de excel segun varien los calores de 2 celdas
entonces pensé en algo como esto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Private Sub Worksheet_Change(ByVal Target As Range)
'
' HideSheets Macro
'
' Acceso directo: Ctrl+Mayús+K
'
Dim T1 As String, T2 As String, T3 As String, T4 As String, T5 As String, T6 As String, T7 As String, T8 As String
T1 = "Hoja 1": T2 = "Hoja 2": T3 = "Hoja 3"
T4 = "Hoja 4": T5 = "Hoja 5": T6 = "Simulador 1": T7 = "Simulador 2": T8 = "Simulador 3"
If Target.Address = Worksheets("Final").Range("x3") Then ' ESTE ES EL TARGET 1
'Esta macro Muestra y oculta las "hojas", segun las selecciones de los usuarios
'Este "Case", muestra y oculta las hojas segun la cantidad de usuarios
Select Case Worksheets("Final").Range("x3").Value
Case 1: Sheets(Array(T1, "Final")).Select
Case 2: Sheets(Array(T1, T2, "Final")).Select
Case 3: Sheets(Array(T1, T2, T3, "Final")).Select
Case 4: Sheets(Array(T1, T2, T3, T4, "Final")).Select
Case 5: Sheets(Array(T1, T2, T3, T4, T5, "Final")).Select
End Select
ActiveWindow.SelectedSheets.Visible = True
Select Case Worksheets("Final").Range("x4").Value
Case 1: Sheets(Array(T5)).Select
Case 2: Sheets(Array(T4, T5)).Select
Case 3: Sheets(Array(T3, T4, T5)).Select
Case 4: Sheets(Array(T2, T3, T4, T5)).Select
End Select
ActiveWindow.SelectedSheets.Visible = False
End If
With If Target.Address = Worksheets("Final").Range("z28") Then 'ESTE ES EL TARGET 2
'Esta segunda parte, muestra y oculta las hojas de simuladores según las opciones seleccionadas en la hoja final
Select Case Worksheets("Final").Range("Z28").Value
Case 1: Sheets(Array(T6)).Select
End Select
ActiveWindow.SelectedSheets.Visible = True
Select Case Worksheets("Final").Range("Z28").Value
Case 1: Sheets(Array(T7, T8)).Select
End Select
ActiveWindow.SelectedSheets.Visible = False
Select Case Worksheets("Final").Range("Z28").Value
Case 2: Sheets(Array(T7)).Select
End Select
ActiveWindow.SelectedSheets.Visible = True
Select Case Worksheets("Final").Range("Z28").Value
Case 2: Sheets(Array(T6, T8)).Select
End Select
ActiveWindow.SelectedSheets.Visible = False
Select Case Worksheets("Final").Range("Z28").Value
Case 3: Sheets(Array(T8)).Select
End Select
ActiveWindow.SelectedSheets.Visible = True
Select Case Worksheets("Final").Range("Z8").Value
Case 3: Sheets(Array(T7, T6)).Select
End Select
ActiveWindow.SelectedSheets.Visible = False
End If
End If
End With
End Sub
PERO NO FUNCIONA
QUE ESTA MAL?
Valora esta pregunta
0