29-11-21, 03:12 PM
(29-11-21, 10:35 AM)E100 كتب : يسمحلي اخي سعود بهذا التعديل
يعمل سواء ب am/pm او بدونها لاي خلية
في حال عدم وجود am/pm في وقت الحضور او وقت الانصراف فسيعتبر الوقت بنظام 24hكود :
For Each r As DataGridViewRow In DataGridView1.Rows
If r.IsNewRow Then Exit For
Dim t = CDate(r.Cells(4).Value) - CDate(r.Cells(3).Value)
r.Cells(5).Value = String.Format("{0:00}:{1:00}", t.Hours, t.Minutes)
Next
تمام تسلم اخي الغالي
E100
الكود الخاص لك يعمل
والحمد لله توصلت لتعديل الكود الخاص بي والكودين بيظهرو نفس النتجية
الخاص بعد التعديل :
لكن محتاج طلب اخر لمواصلة العملكود :
For Each row As DataGridViewRow In DataGridView1.Rows
If row.IsNewRow = False Then
Dim TotalMinit As Integer = 0
Dim TotalHour As Integer = 0
TotalMinit = DateDiff(DateInterval.Minute, row.Cells(3).Value, row.Cells(4).Value) ' حساب الفرق بالساعة بين الحضور والانصراف
If TotalMinit > 59 Then
TotalHour += Math.Floor(TotalMinit / 60)
TotalMinit = TotalMinit Mod 60
Dim TotalTime As String = TotalHour.ToString("00") & ":" & TotalMinit.ToString("00")
row.Cells(5).Value = TotalTime
Else
row.Cells(5).Value = "00:" & TotalMinit.ToString("00")
'row.Cells(5).Value = "00"
End If
End If
Next
ازاى اقدر اعمل استعلام عن الوقت الدخول فقط اللى هو اقل من الساعة 05:30 مساء
علشان الداتا متسجلة فى قاعدة البيانات بالشكل دة
1/1/22021 08:30
1/1/2021 05:30

