۲۱-مهر-۱۳۸۷, ۲۳:۱۵:۱۲
سلام
این کد رو ببینید در آخر توضیحات رو می دم
خوب - اول با عرض خسته نباشید خدمت همه
این کد ها مربوط میشه به یک قسمت از برنامه که میاد یک فیلد از یک دیتا گرید رو جمعش رو که مقادیر اون ساعت هست مثلا 10:40:50 توی یک تکس باکس نشون می ده
حالا مشکل کجاست
زمان رو درست نشون نمی ده
یک فیلد هست به نام جمع کل ساعت که باید جمعش نشون داده بشه
بانک اطلاعاتی اکسس هست
این هم از قسمت لود
ممنون اگه مورد دیگه ای هم بود بگین توضیح بدم
قبلا از راهنمایی شما متشکرم
این کد رو ببینید در آخر توضیحات رو می دم
کد:
Private Sub Command1_Click()
' Dim dd As Integer
Dim lngSec As Long
Dim lngSum As Long
Dim i As Long
If Adodc1.Recordset.RecordCount = 0 Then
MsgBox "I?C I? ??C?ECE .???I ?C IC?? C?E", vbCritical + vbOKOnly + vbSystemModal, "I?C !"
Adodc1.Recordset.Close
Adodc1.Recordset.Open
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
Else
Adodc1.Recordset.MoveFirst
For i = 1 To Adodc1.Recordset.RecordCount
'On Error GoTo dd
lngSec = Con_Time_To_Second(Adodc1.Recordset.Fields(4).Value)
lngSum = lngSum + lngSec
Adodc1.Recordset.MoveNext
Next
LSLabel7.Caption = Con_Secont_To_Time(lngSum)
Adodc1.Recordset.MoveFirst
End If
End Sub
Public Function Con_Time_To_Second(ByVal strTime As String) As Long
On Error Resume Next
Dim strTemp() As String
Dim i As Integer
strTemp = Split(strTime, ":")
Con_Time_To_Second = 0
For i = 0 To UBound(strTemp)
Con_Time_To_Second = Con_Time_To_Second + (Val(strTemp(i)) * (60 ^ (UBound(strTemp) - i)))
Next
End Function
Public Function Con_Secont_To_Time(ByVal Second As Long) As String
On Error Resume Next
Dim s As Long, M As Long, H As Long
Dim Manfi As Boolean
If Second < 0 Then
Manfi = True
Second = Second * (-1)
End If
H = Second \ 3600
M = (Second Mod 3600) \ 60
s = (Second Mod 3600) Mod 60
Con_Secont_To_Time = H & ":" & IIf(M > 9, M, "0" & M) & ":" & IIf(s > 9, s, "0" & s)
If Manfi = True Then
Con_Secont_To_Time = Con_Secont_To_Time & "-"
End If
End Function
این کد ها مربوط میشه به یک قسمت از برنامه که میاد یک فیلد از یک دیتا گرید رو جمعش رو که مقادیر اون ساعت هست مثلا 10:40:50 توی یک تکس باکس نشون می ده
حالا مشکل کجاست
زمان رو درست نشون نمی ده
یک فیلد هست به نام جمع کل ساعت که باید جمعش نشون داده بشه
بانک اطلاعاتی اکسس هست
این هم از قسمت لود
کد:
Private Sub Form_Load()
Skin1.ApplySkin frmkarkard.hWnd
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Data\DBE.mdb"
Adodc1.RecordSource = "Data"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from ekhtelaf"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
'-----------------------
Adodc2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\DBE.mdb"
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = "select * from dbsabt"
Adodc2.Refresh
Adodc1.Recordset.MoveFirst
قبلا از راهنمایی شما متشکرم