Eduardo, a sua rotina está no evento change, ou seja só correrá qdo alterar alguma celula, como o campo data não estava com a formula que disse, supuz que estava digitando, e para eu entrar com a formula depois que abrir o modelo o evento correrá, e a data será alterada, não adiantando eu salvar e fechar o arquivo, o mesmo já vai estar com a data atualizada.
Mas vamos falar sobre a rotina em si :
Temos as instruções :
linha = ActiveCell.Row - 1
Na linha acima e tanto na abaixo temos duas situações diferentes, explicado mais abaixo.
If Target.Address = "$J$" & linha Then
Se selecionar B4 e digitar uma data e pressionar o enter a Variável linha será carregada com o nº "4", porque apos o Enter o cursor move-se para baixo na linha 5 e o -1 informa que saiu da linha acima diminuindo um, mas se selecionar B4 e alterar sem pressionar o Enter o valor da Variável será 3, porque como não saltamos de linha temos a linha atual 4 - 1, e o mesmo acontece com a coluna "J".
Se correr a rotina utilizando o F8 poderá acompanhar passo a passo, e verá que saimos da rotina se alterarmos manualmente em B4 devido a condição "If Target.Address = "$J$" & linha Then
". por isto disse para capturar a alteração em B4 e depopis correr verificação na coluna "J".
Não sei se entendeu, escrevi bem rápido que agora tenho de sair, mais tarde se der retorno ao tópico.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 16/06/2015 5:47 am