Robri, como citei anteriormente, trabalhar com 3 Eventos na mesma aba tem de ser bem amarrado, e como não conheço o seu modelo, os procedimentos, eu só me atentei ao Evento "Worksheet_Change" que é o que capta as alterações e bloqueia e protege a planilha.
Mas vai algumas considerações quanto a questão do que precisamos muitas vezes de um modelo e detalhes de todo o procedimento :
* O primeiro Evento a ser executado é o Worksheet_SelectionChange, onde você armazena na variável mStr o valor que se encontra na celula.
* Após isso, temos os outros 2 eventos, onde no Worksheet_BeforeDoubleClick tem as mesmas instruções, ou seja armazenado o valor da celula na variavel mStr.
* Por fim o evento Worksheet_Change, onde é armazenado na variável xRg o valor digitado e comparado com o que estava armazenado em mStr.
Seguindo essa sequencia temos na lógica que, pelas instruçõess na rotina, primeiro desprotegemos a planilha , depois é efetuado a comparação se o valor digitado é diferente ao armazenado na variavel mStr, e se for igual pulamos para o fim da rotina onde não protegemos a mesma.
Então fica algumas duvidas quanto aos procedimentos e utilização de seu arquivo, ou seja :
1) As celulas na planilha já tem algumas preenchidas ao abrir e já estão com proteção ?
2) Verificou se todas as celulas do range definido estão com a propriedade de Bloqueio definidas corretamente ?
3) Qual a sequencia dos procedimentos pelos usuários ? uma vez que diz que é feito o compartilhamento da mesma.
E por fim, e acredito que seja isso o que está ocorrendo, se a celula desbloqueada para digitação estiver VAZIA e dar o Duplo Clique e não fizer nenhuma alteração, na sequencia é passado para o evento "Worksheet_Change" onde irá acontecer o que citei acima, ou seja nada devido a comparação dos valores armazenados e digitados, ação essa que tem de ser tratada na instrução de comparação.
Espero ter conseguido me fazer entender, ou seja, precisamos de toda informação necessária para se construir uma resposta mais eficaz, e quando possivel, atraves do modelo, assim não ficamos por suposições, lembre-se sempre, em qualquer Forum as ajudas são voluntárias e geralmente analisadas em pouco espaço de tempo, algumas duvidas se consegue em analise somente da rotina, outras mais complexas demandam mais tempo tanto para a analise e entender o que a pessoa quer quanto tempo disponível para isso.
Procure verificar e analisar o que citei e qualquer duvida retorne.
[]s
Mauro Coutinho
Administrador
Postado : 21/11/2019 7:29 am