Fórum Excel Bácico, Avançado e Vba
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  

 

 Proteger Planilha

Ir para baixo 
2 participantes
Ir à página : 1, 2  Seguinte
AutorMensagem
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Proteger Planilha    Proteger Planilha  EmptySáb Set 27, 2014 2:49 am

Olá, boa noite.

Estou chegando agora ao forum e preciso de uma ajuda. Tenho uma planilha que é publica para que sejam inseridas informações, porem as informações não podem ser deletadas.

Tem como colocar uma proteção onde o usuário possa inserir informações, uma vez salvo, só com senha pra deletar.

Desde já agradeço pela ajuda.

Att

Jose Rogowski
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySáb Set 27, 2014 4:20 am

Boa noite!!

Veja se ajuda....
http://www.aprenderexcel.com.br/2013/tutoriais/como-salvar-uma-planilha-do-excel-como-somente-leitura

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySáb Set 27, 2014 11:28 pm

Obrigado pela resposta Alexandrevba, más na verdadeo que eu preciso é o seguinte: Os usuarios podem inserir informações na planilha, porem uma vez salva, só um administrador pode deletar as informações.

Ou seja, todos podem inserir dados, más só eu posso apagar informações salvas na planilha.

Existe essa opção no excel?
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 12:15 am

Boa tarde!!

Use um evento, que quando for digitado, após tentar alterar, solicitará a senha....

Favor adaptar!!
Código:
   
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim NewValue As Variant, OldValue As Variant
        If Target.Count > 1 Then Exit Sub
        If Not Intersect(Target, Range("A1:F10")) Is Nothing Then
            NewValue = Target.Value
            Application.EnableEvents = False
            Application.Undo
            OldValue = Target.Value
            If OldValue = "" Then
                Target.Value = NewValue
            ElseIf InputBox("enter password") = "SuaSenha" Then
                Target.Value = NewValue
            Else: MsgBox "Você não pode alterar o conteudo da celula.", 16, "Células Bloqueadas"
                Target.Value = OldValue
            End If
            Application.EnableEvents = True
        End If
    End Sub


Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Duvida   Proteger Planilha  EmptyDom Set 28, 2014 12:17 am

Não sou muito bom em excel. Pra fazer faço o procedimento alt F11, colo o codigo e salvo... é por ai?
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 12:20 am

Boa noite!!

Insira esse código dentro do módulo de planilha.

Leia:
http://www.ambienteoffice.com.br/officevba/modulos_em_vba/


Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 12:35 am

Colei o código porem não aparece quando vou visualizar macros, e quando dei o F8.

O que estou fazendo errado?

Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 12:37 am

Boa noite!!

Mande o seu arquivo modelo, poste em site gratuito como sedspace, depois cole o link aqui!


Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 12:52 am

No arquivo ''Solicitações de Serviços'' os usuarios irão inserir informações, porem so eu poderei deletá-las

Duvidas estarei a disposição o tempo todo, online. (sendspace.com/file/81ioqp)

Esta aparecendo uma mensagem que eu nao tenho acesso para postar link, por isso mandei assim, entre parenteses
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 1:17 am

Boa noite!!

Você não disse qual intervalo deve ser protegido, com eu tive que adivinhar, então faça a adaptação!

A senha é: alevba

https://www.sendspace.com/file/m7xeg3
Obs: Para qualquer código em VBA ou Macro funcionar as macros devem está habilitadas!!

Com habilitar Macros:
http://office.microsoft.com/pt-br/powerpoint-help/habilitar-ou-desabilitar-macros-nos-documentos-do-office-HA010031071.aspx
http://office.microsoft.com/pt-br/excel-help/habilitar-ou-desabilitar-macros-em-arquivos-do-office-HA010354316.aspx
https://br.answers.yahoo.com/question/index?qid=20090908094416AAoiB4l
http://blog.planilhasexcel.com/2008/08/como-habilitar-macros.html

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 1:31 am

Cara, muito obrigado, exatamente isso.


Agora a ultima pergunta, para adaptar o intervalo, como eu faço? e se eu quiser mudar a senha, como faço.

Más ate agora valeu, muito obrigado


Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 1:44 am

Boa noite!!

Para mudar o intervalo:
Código:
If Not Intersect(Target, Range("A1:F10")) Is Nothing Then
Onde tem "A1:F10", altere conforme sua necessidade.

Para alterar a senha:
Código:
ElseIf InputBox("enter password") = "alevba" Then
, Onde tem alevba, altere conforme sua necessidade.

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 1:52 am

Muito obrigado novamente.

Sou muito grato pela ajuda

Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyDom Set 28, 2014 1:58 am

Boa noite!!

Eu fico feliz em ajudar, obrigado pelo retorno!!


Att cheers
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySeg Set 29, 2014 8:20 pm

Boa tarde alexandrevba,

Uma informação e uma juda.

Fiz um teste na planilha, com a macro a gente não consegue apagar por celula, más se selecionarmos várias celulas eu consigo apagar.

Existe alguma ação para evitar isso?

Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySeg Set 29, 2014 10:30 pm

Boa tarde!!

Em teoria todo intervalo que for referenciado via VBA
Código:
If Not Intersect(Target, Range("A1:F10")) Is Nothing Then
, deverá ser afetado pelo código!


Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySeg Set 29, 2014 10:37 pm

Se eu selecionar uma unica celula bloqueia, se eu selecionar várias celulas ao mesmo tempo estou conseguindo deletar sem necessidade de senha.

O código da planilha esta igual ao que voce passou agora.

If Not Intersect(Target, Range("B6:EP18240")) Is Nothing Then

Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySeg Set 29, 2014 11:17 pm

Boa tarde!!

Você pode postar um arquivo modelo?

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyTer Set 30, 2014 12:35 am

Segue olink para a planilha modelo.

Eu não consigo postar link, mudei o endereço (sendspace.com/file/t8hi36)


Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySeg Out 06, 2014 2:03 pm

Bom dia!!

Tente...
Código:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim NewValue As Variant, OldValue As Variant
    Dim lRow As Long
    Dim lCol As Long
    Dim bNoData As Boolean
    If Not Intersect(Target, Range("B6:EP18240")) Is Nothing Then
        NewValue = Target.Value
        Application.EnableEvents = False
        Application.Undo
        OldValue = Target.Value
        If IsArray(NewValue) Then
            bNoData = True
            For lRow = 1 To UBound(NewValue, 1)
                For lCol = 1 To UBound(NewValue, 2)
                    If NewValue(lRow, lCol) <> "" Then
                        bNoData = False
                        Exit For
                    End If
                Next
            Next
            If bNoData Then
                If InputBox("Digite a senha") = "1" Then
                    Target.Value = NewValue
                Else: MsgBox "Você não pode alterar o conteudo da celula.", 16, "Células Bloqueadas"
                    Target.Value = OldValue
                End If
            Else
                Target.Value = NewValue
            End If
        Else
            If OldValue = "" Then
                Target.Value = NewValue
            ElseIf InputBox("Digite a senha") = "1" Then
                Target.Value = NewValue
            Else: MsgBox "Você não pode alterar o conteudo da celula.", 16, "Células Bloqueadas"
                Target.Value = OldValue
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Proteger Planilha   Proteger Planilha  EmptyTer Out 07, 2014 2:10 am

Muito obrigado alexandrevba, esta funcionando ok.


Valeu mesmo, muito agradecido.

Att
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyTer Out 07, 2014 4:36 pm

Bom dia!!

Eu fico feliz que conseguiu resolver, at+++ cheers


Mande sua dúvida no fórum.

Você quer que solicite a senha ao tentar salvar o arquivo?

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptyQui Out 09, 2014 1:00 am

na verdade o que eu quero é que: Após inserido algo na celula o usuario possa alterar sem necessidade de senha, porem depois que ele salvar as informações inseridas ele não consiga mais alterar.

Att

Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  EmptySex Out 10, 2014 11:00 pm

Boa tarde!!

Seria isso?

Esse código deve ser posto dentro de Estapasta_de_trabalho
Código:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim Cell As Range
    With ActiveSheet
        .Unprotect Password:="AleVBA" 'Senha apra desproteger o arquivo
        .Cells.Locked = False
        For Each Cell In ActiveSheet.UsedRange
            If Cell.Value = "" Then
                Cell.Locked = False
            Else
                Cell.Locked = True
            End If
        Next Cell
        .Protect Password:="AleVBA" 'Senha apra desproteger o arquivo
    End With
End Sub

Att
Ir para o topo Ir para baixo
jrogowski




Mensagens : 23
Data de inscrição : 27/09/2014

Proteger Planilha  Empty
MensagemAssunto: Proteger planilha   Proteger Planilha  EmptySáb Out 11, 2014 12:32 am

Inseri o código e aparece esse erro:

Cell.Locked = True ( Essa linha fica marcada em amarelo )

To fazendo alguma errada?

Att
Ir para o topo Ir para baixo
Conteúdo patrocinado





Proteger Planilha  Empty
MensagemAssunto: Re: Proteger Planilha    Proteger Planilha  Empty

Ir para o topo Ir para baixo
 
Proteger Planilha
Ir para o topo 
Página 1 de 2Ir à página : 1, 2  Seguinte
 Tópicos semelhantes
-
» EXCEL 2000 - Proteger Planilha com AutoFiltro habilitado
» Abrir planilha com um form fixo e os comandos que esta na planilha funcionarem.
» Macro para copiar dados de uma planilha e colar na última linha vazia de outra planilha
» Exportar dados (do controle ActiveX) de uma planilha A para uma planilha B
» Importar Planilha para outra Planilha no excel

Permissões neste sub-fórumNão podes responder a tópicos
Fórum Excel Bácico, Avançado e Vba :: Usuários Básico :: Excel Básico-
Ir para: