Jump to content
Fórum Script Brasil
  • 0

setar uma aba para sempre abrir ela


fabiosanches
 Share

Question

Boa Tarde, estou apanhando já a quase uma semana para colocar uma determinada aba do excel para abrir sempre nela, uma chamada login,  tentei vários códigos inclusive esse abaixo

Private Sub Workbook_Open()
      
 
    Set wsinicio = Worksheets("login")
 
    On Error Resume Next
   Dim sht As Worksheet
 
        wsinicio.Visible = xlSheetVisible
        wsinicio.Select
        wsinicio.Activate
 
       For Each sht In ThisWorkbook.Worksheets
 
 
     If sht.Name <> wsinicio.Name Then
       sht.Visible = xlVeryHidden
       End If
   Next
    
   
   UserForm1.Show
End Sub

só que o excel nunca abre, ele tem esse userform1 que é o login e senha que vou postar abaixo, sempre ele abre com a ultima aba que eu trabalhei, tentei no workbook.beforeclose colocar a mesma função para voltar a reabilitar a aba que eu quero e nadaaaa.. segue abaixo o userform e medida que eu fosse clicando nos "submenus" eu faria a mesma coisa, mostraria somente ele e ocultaria o resto.

 

Private Sub CommandButton1_Click()
    
        If txtLogin = "" Then
            MsgBox "Digite o nome do usuário !"
            Exit Sub
            txtLogin.SetFocus
        Else
          If txtSenha = "" Then
                MsgBox "Digite a senha do usuário !"
                Exit Sub
                txtSenha.SetFocus
          End If
        End If
        
        col = 1
        lin = 2
        While (Plan1.Cells(lin, col) <> txtLogin)
            lin = lin + 1
            If lin > 50 Then
                MsgBox "Usuário não esta cadastrado"
                Exit Sub
            End If
        Wend
        
        Dim senha As String
        'lin = 2
        col = 2
        senha = Plan1.Cells(lin, col).Value
        
        Dim tela As String
        'lin = 2
        col = 3
        tela = Plan1.Cells(lin, col).Value
        
        If txtSenha <> senha Then
            MsgBox "A senha não confere !!"
            Exit Sub
        Else
            MsgBox "Seja Bem Vindo " & txtLogin
            lin = 2
            col = 1
            While (Plan2.Cells(lin, col) <> "")
                lin = lin + 1
            Wend
            Plan2.Cells(lin, 1) = txtLogin.Value
            Plan2.Cells(lin, 2) = txtSenha.Value
            Plan2.Cells(lin, 3) = Date


            MsgBox tela.Name
            
      Set wslogin = Worksheets(tela)
              

    On Error Resume Next
   Dim sht As Worksheet
 
        wslogin.Visible = xlSheetVisible
        wslogin.Select
        wslogin.Activate
 
       For Each sht In ThisWorkbook.Worksheets
 
 
     If sht.Name <> wsinicio.Name Then
       sht.Visible = xlVeryHidden
       End If
   Next
        
        ActiveWindow.DisplayWorkbookTabs = True
            Hide
       End If
    ActiveWorkbook.Protect Password:="123", Structure:=True, Windows:=False
    
End Sub

 

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Não entendi muito bem o seu código.
Se é para deixar visível somente a planilha (Plan) "Início" e ocultar todas as outras planilhas que existirem, o código abaixo faz isso. Não é preciso nem selecionar ou ativar a planilha "Início", visto que somente ela estando visível, automaticamente será a planilha selecionada.

 

Private Sub Workbook_Open()

    Dim wks As Worksheet
    
    For Each wks In ThisWorkbook.Worksheets
    
        If wks.Name <> "Inicio" Then
            wks.Visible = xlSheetHidden 'Ou xlVery Hidden
        End If
    
    Next wks

    UserForm1.Show
    
End Sub

 

Edited by Nelson S
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...