Excel - Tengo un Problema

 
Vista:

Tengo un Problema

Publicado por Oscar Osvaldo (1 intervención) el 08/02/2018 03:38:55
Tengo un problema tengo un sistema de control en excel lo que pasa es que quiero bloquear una hoja de registros que se genera automaticamente atravez de una macro ya intente tratando de desbloquear al comienzo pero igual me sigue tirando error tiene por ahora 9 hojas y un control de acceso en la primera hoja lo que guarda ese registro es los datos de usuario y la hora que entro y esa hoja quiero bloquear pero no puedo nose ya intente muchas cosas y nose si se puede hacer 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
Option Explicit
Sub INGRESAR()
 
 
Dim TransRowRng As Range
Dim NewRow As Integer
 
 
Set TransRowRng = ThisWorkbook.Worksheets("REGISTRO").Cells(1, 1).CurrentRegion
NewRow = TransRowRng.Rows.Count + 1
With ThisWorkbook.Worksheets("REGISTRO")
    .Cells(NewRow, 1).Value = Now()
    .Cells(NewRow, 2).Value = ThisWorkbook.Sheets(1).Range("G21")
    .Cells(NewRow, 3).Value = ThisWorkbook.Sheets(1).Range("J1")
End With
'Autentico el Usuario y Contraseña
If Sheets("USUARIOS").Range("E5").Value Then
                 'eligo el caso
'la variable esta representada por lo el dato que tenemos en la hoja usuarios en la celda D4. Esta celda muestra el mismo dato de la celda usuario en la hoja de inicio.
Select Case Sheets("USUARIOS").Range("D5").Value
Case "TOTAL"
 
'Administrador
Sheets("INICIO").Visible = True
Sheets("USUARIOS").Visible = True
Sheets("INGRESOS").Visible = True
Sheets("DEPOSITO").Visible = True
Sheets("ITEMI").Visible = True
Sheets("ITEMII").Visible = True
Sheets("EMPRESA").Visible = True
Sheets("REGISTRO").Visible = True
Case "NORMAL"
'NORMAL
 
Sheets("INICIO").Visible = True
Sheets("INGRESOS").Visible = True
Sheets("DEPOSITO").Visible = True
Sheets("ITEMI").Visible = True
Sheets("ITEMII").Visible = True
Sheets("EMPRESA").Visible = True
 
End Select
 
End If
 
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Tengo un Problema

Publicado por Antoni Masana (2463 intervenciones) el 08/02/2018 09:50:20
Buenas,

Veo y no veo varias cosas.

Hablas de desbloquer hoja y no veo ninguna linea de Desbloque/Bloqueo.
Veo que haces visibles unas hojas que no veo si están o no ocultas, no veo cuando se ocultan.
El IF hace referencia a una celda con un valor Lógico (Verdad o Falso) y en el CASE es un texto.
No veo el libro y no se puede saber que esta bien o que esta mal.

Tendrías que enviar el libro para ver como lo tienes montado, ver donde falla y aconsejarte sobre la mejor forma de hacerlo.


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
Option Explicit
 
Sub INGRESAR()
    Dim TransRowRng As Range
    Dim NewRow As Integer
 
    Set TransRowRng = ThisWorkbook.Worksheets("REGISTRO").Cells(1, 1).CurrentRegion
    NewRow = TransRowRng.Rows.Count + 1
 
    With ThisWorkbook.Worksheets("REGISTRO")
        .Cells(NewRow, 1).Value = Now()
        .Cells(NewRow, 2).Value = ThisWorkbook.Sheets(1).Range("G21")
        .Cells(NewRow, 3).Value = ThisWorkbook.Sheets(1).Range("J1")
    End With
 
    '--- Autentico el Usuario y Contraseña
 
    If Sheets("USUARIOS").Range("E5").Value Then
 
       '--- Eligo el caso
       '    la variable esta representada por lo el dato que tenemos en la 
       '    hoja usuarios en la celda D4. Esta celda muestra el mismo dato
       '    de la celda usuario en la hoja de inicio.
 
        Select Case Sheets("USUARIOS").Range("D5").Value
 
            Case "TOTAL"          ' ---&--- Administrador
 
                Sheets("INICIO").Visible = True
                Sheets("USUARIOS").Visible = True
                Sheets("INGRESOS").Visible = True
                Sheets("DEPOSITO").Visible = True
                Sheets("ITEMI").Visible = True
                Sheets("ITEMII").Visible = True
                Sheets("EMPRESA").Visible = True
                Sheets("REGISTRO").Visible = True
 
            Case "NORMAL"         ' ---&--- NORMAL
 
                Sheets("INICIO").Visible = True
                Sheets("USUARIOS").Visible = False
                Sheets("INGRESOS").Visible = True
                Sheets("DEPOSITO").Visible = True
                Sheets("ITEMI").Visible = True
                Sheets("ITEMII").Visible = True
                Sheets("EMPRESA").Visible = True
                Sheets("REGISTRO").Visible = False
        End Select
    End If
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar