Boa tarde, estou com uma dificuldade em realizar um condicional de if. Tenho um formulário com vários campos tipo:
nome do cliente, convenio, código de barra, valor e assim por diante.
Minha situação é que o campo valor se ele for maior ou igual 0,01 arredonda o valor e acrescenta 1,00, até aqui tudo bem, a minha situação se complica quando o convenio for 2 que ele não precisa executa os acréscimos.
Desde ja agradeço.
Segue o codigo abaixo:
Private Sub TxtValor_LostFocus()
If Me.TxtConvenio = 2 Then
TxtValor = Me.TxtValor
Else
If TxtValor >= 0.01 Then
TxtAredondamento = 1
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 50.01 Then
TxtAredondamento = 2
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 200.01 Then
TxtAredondamento = 3
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 400.01 Then
TxtAredondamento = 5
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 600.01 Then
TxtAredondamento = 6
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 900.01 Then
TxtAredondamento = 10
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 1500.01 Then
TxtAredondamento = 15
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 2500.01 Then
TxtAredondamento = 20
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 3000.01 Then
TxtAredondamento = 25
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 4000.01 Then
TxtAredondamento = 30
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
End If
End Sub
nome do cliente, convenio, código de barra, valor e assim por diante.
Minha situação é que o campo valor se ele for maior ou igual 0,01 arredonda o valor e acrescenta 1,00, até aqui tudo bem, a minha situação se complica quando o convenio for 2 que ele não precisa executa os acréscimos.
Desde ja agradeço.
Segue o codigo abaixo:
Private Sub TxtValor_LostFocus()
If Me.TxtConvenio = 2 Then
TxtValor = Me.TxtValor
Else
If TxtValor >= 0.01 Then
TxtAredondamento = 1
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 50.01 Then
TxtAredondamento = 2
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 200.01 Then
TxtAredondamento = 3
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 400.01 Then
TxtAredondamento = 5
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 600.01 Then
TxtAredondamento = 6
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 900.01 Then
TxtAredondamento = 10
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 1500.01 Then
TxtAredondamento = 15
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 2500.01 Then
TxtAredondamento = 20
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 3000.01 Then
TxtAredondamento = 25
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
If TxtValor >= 4000.01 Then
TxtAredondamento = 30
TxtDiferenca = Round(TxtValor + TxtAredondamento + 0.5)
TxtValorTaxa = TxtDiferenca - TxtValor
End If
End If
End Sub