Limpando a célula J se a célula B for maior que a célula G

0

Estou tentando implementar um sistema básico de controle de estoque.

O projeto pode ser encontrado aqui e uma foto here .

Basicamente, quando o estoque é menor que o nível de reabastecimento (B < = G), o estoque de pedidos? coluna (I) deve mostrar sim. Quando um membro da equipe faz o pedido de estoque, ele marca o pedido? (J) coluna como Sim. Isso deve então causar o estoque da ordem? (I) coluna para ficar em branco. Isso funciona até agora.

A questão é que quando recebemos mais estoque, isso é entrado na planilha Recebida, modificando o valor Quantidade em estoque (B). O que eu gostaria é que, se B > G, claro J. Isso não parece estar funcionando, mas não consigo entender o porquê.

O código VBA que estou usando é:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 Then Exit Sub
Application.EnableEvents = False
If Cells(Target.Row, 2) > Cells(Target.Row, 7) Then
    Cells(Target.Row, 10).Value = ""
Else
    Cells(Target.Row, 9).Value = "Yes"
End If
Application.EnableEvents = True
End Sub

Se alguém pudesse me apontar na direção certa, seria apreciado.

    
por lukecolli98 20.05.2017 / 18:29

1 resposta

0

Boa tarde!

O que acontece é que, ao inserir dados na planilha Recebida, não está acionando a planilha_alteração da planilha de estoque. Quando você altera os dados na planilha Recebida, como você tem uma fórmula na Coluna B da planilha de Ações, o evento acionado é Worksheet_Calculate.

Enviei uma alteração para você aqui onde fiz o Worksheet_Change de Dados de atualização da planilha recebida para você.

Por favor, fique à vontade para fazer perguntas adicionais.

Atenciosamente!

    
por 20.05.2017 / 22:00