Notifications
Clear all

LIBERACAO DE CELULA APOS DIGITACAO DE OUTRA

7 Posts
2 Usuários
0 Reactions
1,568 Visualizações
(@edsonruaro)
Posts: 28
Eminent Member
Topic starter
 

Oi pessoas boa tarde,

vejam se me ajudam....

por exemplo eu gostaria de fazer o seguinte ...

como habilitar uma sucessao de celulas a partir de outra celula.

se eu digitar na cellula A1, habilito a B1, digitei a cellula B1, habilito a C1, digitei a cellula C1, habilito a D1
isto pode ocorrer em varias cellulas, mais ou menos ate a A260....

É possivel ?

 
Postado : 04/10/2016 12:23 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 


Uma ideia:
Apenas a célula A1 inicia desbloqueada.
Supondo que a última coluna seja a J (10) até 'pular' de linha.

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 10 Then
lin = Target.Row + 1
col = 1
Else
lin = Target.Row
col = Target.Column + 1
End If

ActiveSheet.Unprotect ("123")
Cells(lin, col).Locked = False
ActiveSheet.Protect ("123")

End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/10/2016 1:13 pm
(@edsonruaro)
Posts: 28
Eminent Member
Topic starter
 

oi Ninja...
nao consegui fazer aqui...

eu deixei apenas a celula A1 desbloqueada ... e se digito 123 nela o resto fica bloqeuado ainda....

 
Postado : 04/10/2016 2:18 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 


Segue anexo. Aqui está funcionando como o esperado.
Lembre-se que de A1, libera B1, C1... J1... A2, B2... J2... A3... e assim por diante.
Ah. Antes de testar, proteja a planilha com a senha: 123

Para outra senha, altere no código também.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/10/2016 2:32 pm
(@edsonruaro)
Posts: 28
Eminent Member
Topic starter
 

Oi ninja bom dia,

eu acredito que não expliquei direito.

vou exemplificar numa planilha sera mais facil.

Temos as Colunas
A : QTDE DE SACO
B : DESCONTO
C : COMISSAO

tudo comeca na coluna A - esta a principio vai estar desbloqueada, o usuario poderá digitar, se a quantidade da celula A2 for maior que 1, habilitaria a celula B2 para digitação.
Se a celula B2 for maior que 0, habilitaria a celula C2 para digitação.

isto pode acontecer em varias linhas por exemplo A3 B3 C3, A4 B4 C4, e assim por diante

acho que assim fica mais claro o entendimento.

 
Postado : 05/10/2016 8:47 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 


Com esta nova explicação, veja se desta maneira está mais próximo do que pretende.
Segue também anexo.

Private Sub Worksheet_Change(ByVal Target As Range)

lin = Target.Row
col = Target.Column

If col = 1 And Target.Value >= 1 Then
ActiveSheet.Unprotect ("123")
Cells(lin, col + 1).Locked = False
ActiveSheet.Protect ("123")
ElseIf col = 2 And Target.Value >= 0 Then
ActiveSheet.Unprotect ("123")
Cells(lin, col + 1).Locked = False
ActiveSheet.Protect ("123")
ElseIf col = 3 Then
ActiveSheet.Unprotect ("123")
Cells(lin + 1, 1).Locked = False
ActiveSheet.Protect
End If

End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 06/10/2016 9:53 am
(@edsonruaro)
Posts: 28
Eminent Member
Topic starter
 

oi Ninja boa tarde,

ainda não é isto... rsrsrs

eu nao quero que a celula seja travada e somente desbloqueada por senha que que a celula seja trava e se o usuario digitar na celula anterior a proxima celula é liberada...

mais ou menos assim

SE A2 <> " " ENTAO
B2 ( DESPROTEGE A CELULA PARA DIGITACAO )
SE B2 <> " " ENTAO
C2 ( DESPROTEGE A CELULA PARA DIGITACAO )

SE A3 <> " " ENTAO
B3 ( DESPROTEGE A CELULA PARA DIGITACAO )
SE B3 <> " " ENTAO
C3 ( DESPROTEGE A CELULA PARA DIGITACAO )

E ASSIM VAI A PLANILHA.... RSRSRS

 
Postado : 10/10/2016 1:44 pm