Ocultando planilhas e protegendo células no Excel 2010

0

Eu montei um formulário de coleta de dados que está distribuído em cinco planilhas. Existe uma maneira de tornar essas folhas invisíveis para que os usuários sejam forçados a navegar usando os botões de planilhas, além de tornar apenas algumas células editáveis?

Se eu quiser incluir uma função para desbloquear tudo apenas pressionando, por exemplo, Ctrl + D , eu precisaria escrever uma macro ou isso pode ser feito outro jeito?

    
por Magda 02.10.2012 / 14:12

1 resposta

3

Sim, é possível ocultar as planilhas e, ao mesmo tempo, garantir que elas não sejam exibidas nas guias da planilha

Vamos dar um exemplo

Crie uma planilha chamada DASHBOARD . Esta é a folha de onde você estará chamando o resto das folhas. Digamos que há mais 3 folhas Magda1 , Magda2 e Magda3

Na folha DASHBOARD , crie 3 botões. Vamos chamá-los de Open Magda1 , Open Magda2 e Open Magda3 Ver captura de tela.

CliqueduasvezesemOpenMagda1ecoleestecódigo

OptionExplicitPrivateSubCommandButton1_Click()DimwsAsWorksheetSheets("Magda1").Visible = True

    For Each ws In ThisWorkbook.Sheets
        If ws.Name <> "Magda1" Then ws.Visible = xlSheetHidden
    Next
End Sub

Da mesma forma, você terá códigos para os outros dois botões

Private Sub CommandButton2_Click()
    Dim ws As Worksheet

    Sheets("Magda2").Visible = True

    For Each ws In ThisWorkbook.Sheets
        If ws.Name <> "Magda2" Then ws.Visible = xlSheetHidden
    Next
End Sub

Private Sub CommandButton3_Click()
    Dim ws As Worksheet

    Sheets("Magda3").Visible = True

    For Each ws In ThisWorkbook.Sheets
        If ws.Name <> "Magda3" Then ws.Visible = xlSheetHidden
    Next
End Sub

Em seguida, vá para a folha Magda1 e coloque um botão no canto superior esquerdo (ou conforme sua escolha). Chame de BACK Este botão nos levará de volta ao DASHBOARD . Veja a captura de tela

Coleestecódigonoeventoclickdobotão

OptionExplicitPrivateSubCommandButton1_Click()DimwsAsWorksheetSheets("DASHBOARD").Visible = True

    For Each ws In ThisWorkbook.Sheets
        If ws.Name <> "DASHBOARD" Then ws.Visible = xlSheetHidden
    Next
End Sub

Da mesma forma, coloque o botão BACK nas outras duas folhas e adicione o código acima.

Uma última coisa. Clique na guia File e, em seguida, clique em Options . Em seguida, clique na guia Advanced na caixa de diálogo Excel Option e desmarque a caixa de seleção que diz Show Sheet Tabs

Finalmente,saiadeDesignModeepronto:)

    
por 02.10.2012 / 16:33