Dr.Bronx
یک شنبه 21 مهر 1387, 02:13 صبح
سلام
این کد رو ببینید در آخر توضیحات رو می دم
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).Valu e)
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 توی یک تکس باکس نشون می ده
حالا مشکل کجاست
زمان رو درست نشون نمی ده
http://i33.tinypic.com/10y15bq.jpg
یک فیلد هست به نام جمع کل ساعت که باید جمعش نشون داده بشه
بانک اطلاعاتی اکسس هست
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
ممنون اگه مورد دیگه ای هم بود بگین توضیح بدم
قبلا از راهنمایی شما متشکرم
این کد رو ببینید در آخر توضیحات رو می دم
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).Valu e)
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 توی یک تکس باکس نشون می ده
حالا مشکل کجاست
زمان رو درست نشون نمی ده
http://i33.tinypic.com/10y15bq.jpg
یک فیلد هست به نام جمع کل ساعت که باید جمعش نشون داده بشه
بانک اطلاعاتی اکسس هست
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
ممنون اگه مورد دیگه ای هم بود بگین توضیح بدم
قبلا از راهنمایی شما متشکرم