Ir ao conteúdo

Posts recomendados

Postado

Boa noite,

 

Amigos estou em um pé de briga com uma planilha que estou produzindo para o meu trabalho.

Tenho diversos macros, alguns botões, 7 forms e até agora com muita ajuda de todos aqui do

Fórum esses recursos estão funcionando perfeitamente.

 

Os forms servem para que os usuários gerem solicitações de atendimento e ao clicar em salvar

esses dados são direcionados para locais específicos da minha planilha, até ai tranquilo.

 

Quero agora realizar a seguinte rotina, ao clicar no botão salvar dos meus forms quero que a

planilha que deve estar previamente toda bloqueada,  seja rapidamente desbloqueada, os dados

sejam inseridos nas células apropriadas e em seguida as células voltem a ficar bloqueadas.

 

Algo assim é possível ? 

 

Já tentei tantos métodos que estou achando que isso vai ser impossível...rs

Para terem um ideia da dificuldade, atualmente não consigo nem bloquear minha planilha de

forma manual usando os botões Proteger/Desproteger do Excel.

 

Faço tudo, seleciono todas células, botão direito, formatar células, Proteção, desmarco e

marco de novo para garantir a opção Bloqueadas, vou em Proteger, deixo marcado apenas

as duas primeiras opções e defino um senha. 

 

Acesso minha planilha, e nada....:(, apenas alguns cabeçalhos e uma coluna ficam bloqueadas

as demais células ficam acessíveis mesmo com o bloqueio ativo. Faço e desfaço esse processo

milhões de vezes e nada. Quando tento fazer esse processo em uma planilha nova em branco

funciona, mas na minha nada...

 

Alguém imagina o que pode estar interferindo nesse recurso, ou tem algum sugestão que possa 

ser aplicada ?

 

Obrigado adiantado.

Fiquem com Deus

 

 

 

Postado

Tente assim

 

Sub Gravar()

 

Declaração de possiveis variaveis

 

'Desprotege a planiha

Unprotect.Password "Senha" '"Senha" é a senha que você devera escolher

 

Seu Codigo ' Aqui você coloca todo o seu codigo atual

 

'Protege a Planilha

Protect.Password "Senha"

 

End Sub

  • Curtir 1
Postado

 

@CasaDoHardware

Beleza :thumbsup::thumbsup:

Vou testar aqui e já digo se deu certo :)

 

Mas obrigado de qualquer forma

adicionado 13 minutos depois

@CasaDoHardware

Não conseguir usar o seu exemplo...:(

 

Abaixo está o código que estou usando atualmente no botão salvar do meu form

 

Private Sub btnSalvar_Click()

'SE FOR CÓDIGO, CONFIRMA NECESSIDADE MALETA (SIM MARCA A CHECKBOX, NÃO SALVA O VALOR NÃO)
If cmbCodigo.Value <> "" Then
Dim maleta As VbMsgBoxResult
maleta = MsgBox("CÓDIGO SELECIONADO" + vbCrLf + "NECESSÁRIO MALETA ?", vbYesNo, "Maleta")
    If maleta = 6 Then
    chkMaleta.Value = True
    Else
    chkMaleta.Value = False
    End If
End If


'ATIVA A PLANILHA
ThisWorkbook.Worksheets("Rotativo").Activate

 

'SELECIONA A CÉLULA A5
Range("A5").Select

 

'PROCURA A PRIMEIRA CÉLULA VAZIA
 Do
 If Not (IsEmpty(ActiveCell)) Then
 ActiveCell.Offset(1, 0).Select
 End If

 Loop Until IsEmpty(ActiveCell) = True

 

'INSERE OS VALORES VALORES DAS TXT(s), CMB(s) E DEMAIS ITENS NA PLANILHA
ActiveCell.Value = txtProntuario.Value
 ActiveCell.Offset(0, 1).Value = txtNome.Value
  ActiveCell.Offset(0, 2).Value = cmbOrigem.Value
   ActiveCell.Offset(0, 3).Value = cmbComplemento1.Value
    ActiveCell.Offset(0, 4).Value = cmbDestino.Value
     ActiveCell.Offset(0, 5).Value = cmbComplemento2.Value
      ActiveCell.Offset(0, 6).Value = cmbVeiculo.Value
       ActiveCell.Offset(0, 7).Value = txtSolicitante.Value
        ActiveCell.Offset(0, 12).Value = Now
         ActiveCell.Offset(0, 10).Value = cmbCodigo.Value
          ActiveCell.Offset(0, 17).Value = txtObservacoes.Value

 

'INSERE A PALAVRA "MALETA" OU "NÃO" DE ACORDO COM A SELEÇÃO DA CHECKBOX
If chkMaleta.Value = True Then
ActiveCell.Offset(0, 11).Value = "MALETA"
Else
ActiveCell.Offset(0, 11).Value = "NÃO"
End If

 

'ATRIBUI O TEXTO NÃO PARA A COLUNA CÓDIGO CASO NENHUM CODIGO TENHA SIDO SELECIONADO
If cmbCodigo.Value = "" Then
ActiveCell.Offset(0, 10).Value = "NÃO"
End If


ActiveWorkbook.Save
Unload Me
 
End Sub
 

É possível usar o seu código adaptando a estrutura que já estou usando ?

 

 

 

Postado

@CasaDoHardware

Deu certo com o seu código...:D:D

O problema não era o código que você me sugeriu, nem os códigos que eu já uso.

O problema era a planilha em si.

 

Tive que exportar meus formulários, copiar o códigos e recolocar tudo em uma pasta de trabalho nova.

Inseri os códigos que você sugeriu e a minha planilha já esta funcionando como deveria, assim que clico 

no botão salvar dos meus forms, o código desprotege a planilha, insere os dados nas células e ao fim

do código protege novamente a planilha.

 

Muito show.

Estou muito satisfeito com resultado, todos os recursos que eu tentei implementar estão operacionais e 

tudo graças a sua ajuda @CasaDoHardware, @Patropi e demais colegas do Fórum.

Graças a vocês finalizei esse projeto.

 

Muito Obrigado à todos.

Att.

Gian 

 

 

 

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!