CALCULO DE TIME X VALOR

JOERBETH 21/08/2012 09:45:22
#408248
pessoal, como vcs fazem a operação:

multiplicar 00:30*1,50 ??

falows
MARCELO.TREZE 21/08/2012 10:57:20
#408256
bom vamos a algumas questões

1,50 é um valor em Reais?

se valor em reais, qual é a formula? seria R$ 1,50 por hora?



JOERBETH 21/08/2012 10:58:41
#408257
assim, 04:00=1,00 a cada 00:30 cobrasse+0,50

vaeu cara
MARCELO.TREZE 21/08/2012 11:09:47
#408259
Primeiro mais uma duvida se a cada 00:30 (trinta minutos) cobra-se 0,50 (cinquenta centavos) então a cada 1 hora seriam R$ 1,00, o que em 04:00 seriam R$ 4,00, estou certo?



JOERBETH 21/08/2012 11:11:18
#408260
não, a cada 04:00=1,00 e se passar, a cada 00:30 cobrasse 0,50
MARCELO.TREZE 21/08/2012 11:33:39
#408262
agora estamos chegando a um entendimento.


Private Sub Command1_Click()
Dim TempoTotal As Date
Dim Diferenca As Integer
Dim phoras As Date
Dim VP As Double [ô][txt-color=#007100] valor das primeiras 04 horas[/txt-color]
Dim VM As Double[txt-color=#007100] [ô] valor do Minuto[/txt-color]
Dim VF As Double [txt-color=#007100][ô] valor final[/txt-color]
VP = 1
VM = 0.5 / 30 [txt-color=#007100][ô]0,50 dividido por 30 minutos[/txt-color]
phoras = [Ô]04:00:00[Ô] [txt-color=#007100][ô]primeiras 04 horas[/txt-color]
TempoTotal = [Ô]05:00:00[Ô][txt-color=#007100] [ô]tempo total[/txt-color]
If TempoTotal > phoras Then [txt-color=#007100][ô] se o tempo total for maior que 04 horas[/txt-color]
Diferenca = DateDiff([Ô]n[Ô], phoras, TempoTotal)
Valorfinal = VP + (VM * Diferenca)
Else[txt-color=#007100] [ô] caso contrario cobrar 1 real[/txt-color]
Valorfinal = 1
End If

MsgBox Format(Valorfinal, [Ô]currency[Ô])
End Sub


veja se é isto

JOERBETH 21/08/2012 14:51:25
#408284
federhen, assim, eu fiz os testes colocando ao inves de 1.5 somnete 1.00 e funcionou beleza, mais assim, em que parte esse codigo ae entende que a fração, ou seja, o tempo q passar de 00:30= 0,50??, porque eu coloquei em horario=[Ô]04:00[Ô] e deu certinho??

outra coisa , se eu manter como 1.5 e mudar para 04:00 não dá certo, porque nesse caso, 04:00=1.50 entendeu?

valeu
JOERBETH 21/08/2012 14:54:06
#408285
marcelo aqui tb,:

Dim TempoTotal As Date
Dim Diferenca As Integer
Dim phoras As Date
Dim Valorfinal
Dim VP As Double [ô] valor das primeiras 04 horas
Dim VM As Double [ô] valor do Minuto
Dim VF As Double [ô] valor final
VP = 1
VM = 0.5 / 30 [ô]0,50 dividido por 30 minutos
phoras = [Ô]04:00:00[Ô] [ô]primeiras 04 horas
TempoTotal = [Ô]08:00:00[Ô] [ô]tempo total
If TempoTotal > phoras Then [ô] se o tempo total for maior que 04 horas
Diferenca = DateDiff([Ô]n[Ô], phoras, TempoTotal)
Valorfinal = VP + (VM * Diferenca)
Else [ô] caso contrario cobrar 1 real
Valorfinal = 1
End If

veja que se eu colocar 08:00 ele teria que cobrar 2,00 , porque a cada 4 horas é 1,00
ALANTB 21/08/2012 15:45:18
#408289
FEDERHEN e colegas, na ultima mensagem se eu não informar valores fixos: [Ô]00:30[Ô] para hora e 1,5 para valor, daria por exemplo informar a origem dos valores de caixas de texto e combobox ex: horario = txttotalhoras.txt e ValorHora = comboboxValorHora.text?????tô tentando algo parecido mas dá erro....
MARCELO.TREZE 21/08/2012 16:12:20
#408290
Citação:

:
não, a cada 04:00=1,00 e se passar, a cada 00:30 cobrasse 0,50



eu pensei que as primeiras 4 hora fossem 1 real e as demais fossem 0,50, porém pelo que entendi se o tempo for por exemplo: 07:30 ela vai pagar mais que ficar 08:00?





JOERBETH 21/08/2012 16:17:57
#408291
assim
4:00=1,00
4:29=1,00
4:30=1,50 - porque a cada meia hora cobra 0,50
4:59=1,50
5:00=2,00
8:00=2,00
8:13=2,00

isso é para controle de horario de um shopping, um cara raramente vai passar 8:00 num chopping..rsss

estou fazendo uma sequencia de if... elseif... mais se tiver como fazer melhor, beleza, estou pegando o exemplo do FEDERHEN e aprimorando, para minha necessidade, por enquanto.

valeu cara
Página 1 de 2 [18 registro(s)]
Tópico encerrado , respostas não são mais permitidas