Boa tarde meus amigos, estou querendo fazer um select case pra caso a variação da minha celula for entre os determinados, ela reescrever umas celulas vizinhas e aparecer um msgbox, poderiam me auxiliar no que estou fazendo de errado?
variacao = ActiveCell.Value
'Ranking de decisões
Select Case variacao
Case Is <= -5, 0
ActiveCell.Offset(0, 1).Value = Range("P10").Value * Range("AA6").Value
ActiveCell.Offset(0, 2).Value = Range("P3").Value * Range("AA6").Value
Range("P10").Value = Range("N10").Value - ActiveCell.Offset(0, 1).Value
Range("P3").Value = Range("N3").Value + ActiveCell.Offset(0, 2).Value
'verificação
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = "OK"
MsgBox ("Passou pelo 5")
Case -4, 99 To -4, 0
ActiveCell.Offset(0, 1).Value = Range("P10").Value * Range("AA7").Value
ActiveCell.Offset(0, 2).Value = Range("P3").Value * Range("AA7").Value
Range("P10").Value = Range("N10").Value - ActiveCell.Offset(0, 1).Value
Range("P3").Value = Range("N3").Value + ActiveCell.Offset(0, 2).Value
'verificação
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = "OK"
MsgBox ("Passou pelo 4")
Case -3, 99 To -3, 0
ActiveCell.Offset(0, 1).Value = Range("P10").Value * Range("AA8").Value
ActiveCell.Offset(0, 2).Value = Range("P3").Value * Range("AA8").Value
Range("P10").Value = Range("N10").Value - ActiveCell.Offset(0, 1).Value
Range("P3").Value = Range("N3").Value + ActiveCell.Offset(0, 2).Value
'verificação
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = "OK"
MsgBox ("Passou pelo 3")
Case -2, 99 To -2, 0
ActiveCell.Offset(0, 1).Value = Range("P10").Value * Range("AA9").Value
ActiveCell.Offset(0, 2).Value = Range("P3").Value * Range("AA9").Value
Range("P10").Value = Range("N10").Value - ActiveCell.Offset(0, 1).Value
Range("P3").Value = Range("N3").Value + ActiveCell.Offset(0, 2).Value
'verificação
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = "OK"
MsgBox ("Passou pelo 2")
Case -1, 99 To -1, 0
ActiveCell.Offset(0, 1).Value = Range("P10").Value * Range("AA10").Value
ActiveCell.Offset(0, 2).Value = Range("P3").Value * Range("AA10").Value
Range("P10").Value = Range("N10").Value - ActiveCell.Offset(0, 1).Value
Range("P3").Value = Range("N3").Value + ActiveCell.Offset(0, 2).Value
'verificação
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = "OK"
MsgBox ("Passou pelo 1")
Case Else
End Select
Postado : 21/12/2020 5:28 pm