Notifications
Clear all

CONTROLE ACTIVEX BLOQUEADO

7 Posts
2 Usuários
0 Reactions
2,004 Visualizações
(@ericsson)
Posts: 54
Trusted Member
Topic starter
 

Pessoal,

Tenho uma planilha e vários botões Activex que não alterão a célula quando a planilha está bloqueada mesmo eu editando o intervalo para permitir edições. (Guia Revisão - Permitir que os usuários Editem Intervalos).

Como eu faço?

 
Postado : 08/05/2014 6:27 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Creio eu que será necessário desproteger a guia etc.
Por favor use a pesquisa do fórum!
viewtopic.php?f=10&t=6427
viewtopic.php?f=21&t=6430
http://planilhando.com.br/forum/viewtop ... =10&t=5817
viewtopic.php?f=10&t=4124

Caso contrário poste seu arquivo modelo compactado!

Att

 
Postado : 08/05/2014 7:03 am
(@ericsson)
Posts: 54
Trusted Member
Topic starter
 

Não encontrei solução para o meu problema nestes artigos...

 
Postado : 08/05/2014 4:57 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

ericson, se entendi corretamente, nos links que o Alexandre indicou mostra como Desproteger a Aba e depois Proteger novamente, ou seja.

Se sua planilha está protegida e a rotina em seu Botão altera algum valor em uma celula protegida, você tem de antes desproteger e no final proteger novamente, seria assim :

Sub BotaoAltera()

'Para Desproteger se tiver uma senha definida
ActiveSheet.Unprotect Password:="suaSenha"

"Aqui vão as instruções que alteram as celulas

'Apos as alterações, No Final Protegemos novamente
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="suaSenha"

End Sub

Se não for isto, forneça mais detalhes.

[]s

 
Postado : 08/05/2014 5:25 pm
(@ericsson)
Posts: 54
Trusted Member
Topic starter
 

Fiz um arquivo simples...
http://www.sendspace.com/file/j8wy8l

O tipo do botão é activex = botão de alternância.

A planilha está protegida mas sem senha.

O que o botão deve fazer alterar a célula D1 de falso para verdadeiro e vice-versa mas sempre deve ficar protegida.

 
Postado : 08/05/2014 6:33 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Ericson, o problema é que você ja deixou definido "LinkedCell = D1" na Propriedade do Controle, então neste tipo de controle não tem como capturar o Click antes de efetuar a alteração em D1, pelo menos até aonde eu sei.
Então para contornar este impasse, apague na Propriedade "LinkedCell" o Range definido e utilize a rotina abaixo:

Private Sub ToggleButton1_Click()

    ActiveSheet.Unprotect
    
    If ToggleButton1.Value = True Then
        Range("D1").Value = True
    
    Else
       Range("D1").Value = False
    
    End If
  
    ActiveSheet.Protect
  
End Sub

Faça os testes e veja se é isto oque quer.

[]s

 
Postado : 08/05/2014 7:09 pm
(@ericsson)
Posts: 54
Trusted Member
Topic starter
 

Vlw!!

Funcionou certinho! Obrigado pela ajuda!

 
Postado : 08/05/2014 7:39 pm