Jump to content

[vb6] Contagem dias de trabalho


programadorvb6
 Share

Recommended Posts

Olá pessoal !

Estou um pouco enferrojado no VB6 e preciso da vossa ajuda.

Passo a descrever :

Estou a desenvolver uma pequena aplicação (visto ser 1 máquina já velha..) em ling. Vb6 em que tenho que fazer o cálculo de quantos dias trabalhei , mediante de quantos dias descasei ; acontece que quando utilizo a função :

CDate(TxtDataFim.Text) - CDate(TxtDataIni.Text) - Val(Folgas.Text)
; para calcular datas ex: 23/03/2009 até 07/04/2009 =16 dias - 4 dias folga | Total 12 dias |

Quando tento fazer cada Mês separadamente não obtenho os mesmos dias.

Nota : Isto é um género de máquina de calcular dias de trabalho em cada mês e que me possa gravar separando os dados por mês caso tenha 2 ou + meses incluidos.

http://img21.imageshack.us/img21/5171/horas.png

Junto envio o código : http://www.box.net/shared/96jdck31f8

Grato pela vossa atenção.

Programadorvb6

______________________________________________________________________________

Que minha coragem seja maior que meu medo e que minha força seja tão grande quanto minha fé.
 

Link to comment
Share on other sites

Porque não usas a função Datediff() para calcular os dias ?

Olá bom dia.

O que eu pretendo com este programa é que não me exclua os fins de semana , pois os horários são rotativos.

Acho com a função DateDiff não dá para fazer pois ela não conta com eles como dias de trabalho ("Sáb;Dom")

Fiz assim :

LblTotal.Caption = DateDiff("d", TxtDataIni.Text, TxtDataFim.Text) - Val(Folgas.Text)

Grato pela vossa atenção

Programadorvb6

______________________________________________________________________________

Que minha coragem seja maior que meu medo e que minha força seja tão grande quanto minha fé.
 

Link to comment
Share on other sites

oLá + 1 vez

não dá !

Ex : 23/03/2009 até 31/03/2009 = 8 dias ( s/ folgas)

Com a func. 

DateDiff("d", TxtDataIni.Text, TxtDataFim.Text) - Val(Folgas.Text)

O que não é verdade se começar dia 23/03/2009 será = 9 dias segundo uma escala rotativa ( ex : entrar sempre no horario : (00:00/08:00)

______________________________________________________________________________

Que minha coragem seja maior que meu medo e que minha força seja tão grande quanto minha fé.
 

Link to comment
Share on other sites

oLá + 1 vez

não dá !

Ex : 23/03/2009 até 31/03/2009 = 8 dias ( s/ folgas)

Com a func. 

DateDiff("d", TxtDataIni.Text, TxtDataFim.Text) - Val(Folgas.Text)

O que não é verdade se começar dia 23/03/2009 será = 9 dias segundo uma escala rotativa ( ex : entrar no horario : (00:00/08:00)

Se trabalhares de dia 23 a 31 (inclusive) são 9 dias!

Link to comment
Share on other sites

É essa a forma.

E como faço então com a Função datediff() ?

Ok acho que já vi!

Vou fazer as continhas depois digo-te alguma coisa.

Obrigado + 1 vez pela tua ajuda.

Grato pela vossa atenção.

ProgramadorVb6

______________________________________________________________________________

Que minha coragem seja maior que meu medo e que minha força seja tão grande quanto minha fé.
 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.