Herkese merhaba
Ekteki dosyada görebileceğiniz gibi arıza tarih ve saati forma giriliyor. Arıza giderildikten sonra arıza giderilme tarih ve saati giriliyor. Saat hesabını aşağıdaki kodla yaptırıyorum.
Private Sub TextBox6_Change()
tar1 = TextBox6.Text
tar1 = Format(tar1, "hh:mm")
If Len(tar1) = 5 And Len(tar2) = 5 Then
x = 1 + (CDate(tar2) - CDate(tar1))
x = Format(x, "hh:mm")
TextBox11.Text = x
End If
End Sub
Private Sub TextBox3_Change()
tar2 = TextBox3.Text
tar2 = Format(tar2, "hh:mm")
If Len(tar1) = 5 And Len(tar2) = 5 Then
x = 1 + (CDate(tar2) - CDate(tar1))
x = Format(x, "hh:mm")
TextBox11.Text = x
End If
End Sub
Ama tarih hesabını yaptırırken (formda göreceğiniz gibi) hata yapıyor. Örneğin; 25.01.2012 saat 23:14 arıza zamanı olsun. 26.01.2012 saat 01:14 arıza giderilme zamanı olsun. Bu durumda toplam duruş zamanı 0 gün 2 saat olmalı, ama benim kullandığım tarih makrosunda 1 gün olarak hesaplıyor. Kullandığım Tarih makrosu aşağıdaki gibidir:
Private Sub TextBox10_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
TextBox8.Value = Format(TextBox8.Value, "dd.mm.yyyy")
TextBox5.Value = Format(TextBox5.Value, "dd.mm.yyyy")
If TextBox5.Value = "" Then
MsgBox " Lütfen tarih giriniz..", , ""
End If
If TextBox8.Value = "" Then
MsgBox " Lütfen tarih giriniz..", , ""
End If
TextBox10.Value = CDate(TextBox8.Value) - CDate(TextBox5.Value)
End Sub
Ne yapmalıyım bu farkı hesaplaması için?
Ekteki dosyada görebileceğiniz gibi arıza tarih ve saati forma giriliyor. Arıza giderildikten sonra arıza giderilme tarih ve saati giriliyor. Saat hesabını aşağıdaki kodla yaptırıyorum.
Private Sub TextBox6_Change()
tar1 = TextBox6.Text
tar1 = Format(tar1, "hh:mm")
If Len(tar1) = 5 And Len(tar2) = 5 Then
x = 1 + (CDate(tar2) - CDate(tar1))
x = Format(x, "hh:mm")
TextBox11.Text = x
End If
End Sub
Private Sub TextBox3_Change()
tar2 = TextBox3.Text
tar2 = Format(tar2, "hh:mm")
If Len(tar1) = 5 And Len(tar2) = 5 Then
x = 1 + (CDate(tar2) - CDate(tar1))
x = Format(x, "hh:mm")
TextBox11.Text = x
End If
End Sub
Ama tarih hesabını yaptırırken (formda göreceğiniz gibi) hata yapıyor. Örneğin; 25.01.2012 saat 23:14 arıza zamanı olsun. 26.01.2012 saat 01:14 arıza giderilme zamanı olsun. Bu durumda toplam duruş zamanı 0 gün 2 saat olmalı, ama benim kullandığım tarih makrosunda 1 gün olarak hesaplıyor. Kullandığım Tarih makrosu aşağıdaki gibidir:
Private Sub TextBox10_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
TextBox8.Value = Format(TextBox8.Value, "dd.mm.yyyy")
TextBox5.Value = Format(TextBox5.Value, "dd.mm.yyyy")
If TextBox5.Value = "" Then
MsgBox " Lütfen tarih giriniz..", , ""
End If
If TextBox8.Value = "" Then
MsgBox " Lütfen tarih giriniz..", , ""
End If
TextBox10.Value = CDate(TextBox8.Value) - CDate(TextBox5.Value)
End Sub
Ne yapmalıyım bu farkı hesaplaması için?
