Página 1 de 1

Proibir inserção de dados sem usar o "Protect"

Enviado: 28 Jul 2019 às 09:20
por eduardogrigull
Olá, tenho experiencia com VBA mas esse problema está bem difícil. Tenho um sistema de cadastros e gostaria de proibir a inserção/modificação de qualquer palavra/propriedade das células.

Isso seria facilmente feito através do Plan1.Protect, porém, são milhares de registros e isso atrasa muito a exportação e importação dos registros.
Outro modo que já tentei, foi bloquear pelo método OnKey, mas não resolve, pois preciso digitar no Userform. O modo Workbsheet_Change poderia resolver, mas ele acaba bloqueando o Script do Userform...

Resumindo: Proibir a inserção de dados direto na planilha, mas permitir que o código do Form faça isso...

Alguma ideia?

Re: Proibir inserção de dados sem usar o "Protect"

Enviado: 28 Jul 2019 às 10:18
por osvaldomp
eduardogrigull escreveu: Resumindo: Proibir a inserção de dados direto na planilha, mas permitir que o código do Form faça isso...
Logo no início do script do Form já experimentou ?
Código: Selecionar todos
 ActiveSheet.Protect "senha", UserInterfaceOnly:=True '~~~> com senha
Código: Selecionar todos
 ActiveSheet.Protect UserInterFaceOnly:=True '~~~> sem senha

Proibir inserção de dados sem usar o "Protect"

Enviado: 28 Jul 2019 às 11:53
por eduardogrigull
Funcionou! Dessa (UserInterFaceOnly:=True) eu não sabia. Obrigado. :D