Esconder senha ao digitar

Anônima
2019-02-05T11:39:39+00:00

Prezados bom dia,

Tenho esta macro que está funcionando muito bem. Contudo ao digitar as senhas elas ficam visíveis. O que pode ser mudado na macro abaixo para que, na caixa de texto onde se digita a senha, ao invés das letras e números aparecer o "******"?

Muito obrigado.

Marco.

Sub lsProtegerTodasAsPlanilhas()


lQtdePlan = Worksheets.Count

lPlanAtual = 1

Dim lPass As String, lpass1 As String, lpass2 As String

Do

'Solicita a senha

'O método InputBox é utilizado para solicitar um valor através de um formulário

lpass1 = InputBox("Proteger todas as planilhas:", "Senha")

lpass2 = InputBox("Proteger todas as planilhas:", "Confirma sua Senha")

'Se deixar sem senha for permitido, sugiro emitir um aviso antes de prosseguir e alterar o teste a seguir.

If lpass1 = lpass2 And lpass1 <> vbNullString Then lPass = lpass1: Exit Do

'Aqui você pode incluir um escape se for possível desistir de inserir senha (basta incluir uma variável na resposta do MsgBox):

MsgBox "As senhas digitadas não conferem, tente de novo!", vbCritical, "Erro nas senhas!"

Loop

 'Loop pelas planilhas

'A função While realiza um loop de código enquanto não passar por todas as planilhas contadas

While lPlanAtual <= lQtdePlan

'O método Worksheets(lPlanAtual).Activate ativa a planilha conforme o índice atual 1, 2, 3...

Worksheets(lPlanAtual).Activate

'O método .Protect proteje a planilha passando os parâmetros para proteger

'objetos de desenho, conteúdo, cenários e passando o password digitado

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=lPass

'Muda o índice para passar para a próxima planilha

lPlanAtual = lPlanAtual + 1

Wend

'O método MsgBox exibe um formulário de aviso ao usuário.

MsgBox "Planilhas protegidas!"

Sheets("Relatório").Protect AllowSorting:=True, AllowFiltering:=True, Password:="M1226a3646g5780S122636465780RecriaPI"

End Sub

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários
Resposta aceita pelo autor da pergunta
Anônima
2019-02-27T03:01:24+00:00

Olá Marco,

Fazer por Userform é bem mais simples, mas usando InputBox (como é o teu caso) é bastante trabalhoso.

Sugiro, se possível, optar por remodelar em um projeto com Userform.

Neste caso é bem simples, ou seja, basta ir nas propriedades do TextBox e alterar o valor da propriedade PasswordCharpara "*".

Veja uma discussão completa com solução para as duas alternativas em [link]


Se esta informação foi útil, por favor, marque como resposta, caso a sua dúvida não tenha sido solucionada, por favor, poste novamente. Este post resolveu o problema? Selecione (X) Sim para fechar o caso.

Assim não só motiva meu trabalho voluntário, como também serve como uma forma de agradecimento ao desafio dado.

Esta resposta foi útil?

4 pessoas acharam esta resposta útil.
0 comentários Sem comentários

0 respostas adicionais

Classificar por: Mais útil