Oppure

Loading
16/02/09 10:42
kingmaster
allora dovrei fare un programma ke segue queste istruzioni: io dovrei immettere le ore di entrata del mattino le ore d'uscita del mattino le ore d'entrata del pomeriggio e le ore d'uscita del pomeriggio ad es: un operaio entra alle 7,35 esce alle 12,40 poi rientra alle 13,24 ed esce alle 18,32, e lui dovrebbe darmi la somma delle ore ke ha lavorato quel giorno e fin qua tt a posto ci sono riuscito anke io ma il problema viene quando ad esempio l'orario supera i 59 minuti e cioè nn converte in un ora ma va avanti tipo 60, 61, 62 minuti e io nn so cm fare

Edit: editato titolo.
Ultima modifica effettuata da GrG 16/02/09 16:38
aaa
16/02/09 11:34
theprogrammer
Fino ad ora cosa hai fatto? Quale codice hai scritto?
aaa
16/02/09 11:45
kingmaster
Private Sub Form_Load()
Dim a, b, c, d, e As Double
End Sub

Private Sub cmdcalcola_Click()
a = txtm.Text
b = txtm1.Text
c = txtp.Text
d = txtp1.Text
e = (d - c) + (b - a)
If e > 8 Then
y = e - 8
End If
lblr.Caption = y
lblr1.Caption = e
End Sub


allora cm vedrai ho messo anke una sottrazione xk l'operaio deve fare 8 ore al giorno e io devo sapere quante ne fa al giorno e quante ne fa in piu al giorno
aaa
16/02/09 16:36
GrG
ehm non ti ho capito bene come fa a uscirti ad esempio 62 min...se mi fai uno screen con i minuti in "eccesso" forse capisco meglio...

ti ricordo che cmq si converte da minuti a ore facendo minuti / 60 :|

...cmq metti titoli + significativi.
aaa
16/02/09 17:15
kingmaster
facciamo una cs fatta bn allora visto ke io sn ancora alle prime armi con vb potresti farmi il piacere di farmi tu il problema ke suppongo x te sara cm bere un bikiere d'acqua allo:
Calcola le ore in eccesso e le ore al giorno di un operaio sapendo ke egli puo lavorare al massimo 8 ore al giorno, inserendo solo le ore di entrata e uscita - della mattinata e le ore di rientrata e di uscita -pomeridiane.
ho cercato di riassumerti il problema se ce qualcosa ke non va dimmi pure io intanto ti mando un'immagine JPG ke potrebbe farti da modello poi tu ovviamente puoi modificarla a tuo piacimento grazie in anticipo;)
aaa
16/02/09 18:07
GrG
Lol forse nn hai capito bene ma io ti avevo richiesto si l'immagine, ma con i campi compilati in modo che si vedano i minuti in eccesso...cioè a parole non ti capisco bene...mi devi fa capire con l'immagine....
aaa
16/02/09 18:34
kingmaster
Postato originariamente da GrG:

Lol forse nn hai capito bene ma io ti avevo richiesto si l'immagine, ma con i campi compilati in modo che si vedano i minuti in eccesso...cioè a parole non ti capisco bene...mi devi fa capire con l'immagine....

be ma presupponiamo ke io nn abbia fatto nnt tu prova a creare il programma con il problema ke ti ho scritto prima
aaa
16/02/09 19:08
GrG
Forse il tuo problema si potrebbe risolvere con la funzione format()...cmq sia ho fatto questa funzione un pò "ortodossa" dove i numeri li tratto come stringhe...
Private Function Ore(ByVal nOre As String) As String
If InStr(1, nOre, ",") > 0 Then
Dim num() As String
num = Split(nOre, ",")
If num(1) >= 60 Then
num(0) = num(0) + 1
num(1) = num(1) - 60
Ore = num(0) & "," & num(1)
Else
Ore = nOre
End If
End If
End Function


Sappi che mi sn risparmiato un ciclo...quindi è incompleta, nel senso che se tu gli passi un valore come "18,67" ti restituisce "19,7" però se gli dai un valore del tipo "18,671" sballa la conversione...
aaa