Dim Hjjc As Double
Dim Hjsk As Double
Dim Hjks As Double
Dim mRsQ As New ADODB.Recordset
Dim mOperate_id As String
Private Sub Form_Activate()
On Error Resume Next
mRsQ.Close
mRsQ.Open "select * from fz_sk_jbdata where operate_id=" & Val(gOperate_idg) & " and sign='0'", gCnSk, adOpenStatic, adLockReadOnly
If mRsQ.EOF = False Then
Call Xsdata
' mRsQ.MoveNext
End IfEnd Sub
Private Sub Form_Load()
On Error Resume Next
MSHFtzdmx.Rows = 2
MSHFtzdmx.Cols = 13
MSHFtzdmx.TextMatrix(0, 0) = "序号"
MSHFtzdmx.TextMatrix(0, 1) = "红"
MSHFtzdmx.TextMatrix(0, 2) = "白"
MSHFtzdmx.TextMatrix(0, 3) = "黑"
MSHFtzdmx.TextMatrix(0, 4) = "黄"
MSHFtzdmx.TextMatrix(0, 5) = "蓝"
MSHFtzdmx.TextMatrix(0, 6) = "紫"
MSHFtzdmx.TextMatrix(0, 7) = "棕"
MSHFtzdmx.TextMatrix(0, 8) = "灰"
MSHFtzdmx.TextMatrix(0, 9) = "青"
MSHFtzdmx.TextMatrix(0, 10) = "粉"
MSHFtzdmx.TextMatrix(0, 11) = "菊"
MSHFtzdmx.TextMatrix(0, 12) = "橙"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 10) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 11) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 12) = ""
Dim i As Integer
For i = 0 To MSHFtzdmx.Cols - 1
If (MSHFtzdmx.Width - 400) > 0 Then MSHFtzdmx.ColWidth(i) = (MSHFtzdmx.Width - 400) / (MSHFtzdmx.Cols - 5)
Next i
MSHFtzdmx.ColWidth(5) = 0
MSHFtzdmx.ColWidth(7) = 0
MSHFtzdmx.ColWidth(8) = 0
MSHFtzdmx.ColWidth(9) = 0
MSHFtzdmx.ColWidth(10) = 0
Dim lRs As New ADODB.Recordset
lRs.Close
lRs.Open "select small_id from fz_sk_data where fire_opening>=4 and operate_id=" & Val(gOperate_idg) & "", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs.EOF
Combo1.AddItem lRs(0)
lRs.MoveNext
Wend
Dim lRs1 As New ADODB.Recordset
lRs1.Close
lRs1.Open "select distinct(gun_length) from fz_sk_gun where gun_name=(select gun from fz_sk_jbdata where operate_id=" & Val(gOperate_idg) & ")", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs1.EOF
lRs1(0) = Format(lRs1(0), "0.0")
Combo2.AddItem lRs1(0)
lRs1.MoveNext
Wend
End SubPrivate Function Xsdata()
If mRsQ.EOF = True Then Exit Function
Dim i As Integer
mOperate_id = mRsQ("operate_id")
gOperate_idg = mOperate_id
Dim lRsdata As New ADODB.Recordset
lRsdata.Open "select fz_sk_data.small_id, oil_bottom, oil_top, interlining,fire_opening, hole_close, hole_count,bullet_name,gun,zcsk,xwj,yh,choose_gun.choose_gunlen from fz_sk_data left join choose_gun on choose_gun.operate_id=fz_sk_data.operate_id where fz_sk_data.operate_id =" & mOperate_id & "", gCnSk, adOpenStatic, adLockReadOnly
MSHFtzdmx.Rows = 2
Call HjMs
MSHFtzdmx.Rows = lRsdata.RecordCount + MSHFtzdmx.Rows
'Text12.Text = lRsdata.RecordCount
While Not lRsdata.EOF
' If lRsdata.AbsolutePosition = 1 Then Text4.Text = lRsdata(1)
'If lRsdata.AbsolutePosition = lRsdata.RecordCount Then Text8.Text = lRsdata(2)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 0) = lRsdata(0)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 1) = lRsdata(1)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 2) = lRsdata(2)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 3) = lRsdata(3)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 4) = lRsdata(4)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 5) = IIf(lRsdata(5) = 0, "", lRsdata(5))
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 6) = lRsdata(6)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 7) = lRsdata(7)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 8) = lRsdata(8)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 9) = lRsdata(9)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 10) = lRsdata(10)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 11) = lRsdata(11)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 12) = lRsdata(12) lRsdata.MoveNext
Wend
Hjjc = 0
Hjsk = 0
Hjks = 0
For i = 1 To MSHFtzdmx.Rows - 2
Hjjc = Hjjc + Val(MSHFtzdmx.TextMatrix(i, 3))
Hjsk = Hjsk + Val(MSHFtzdmx.TextMatrix(i, 4))
Hjks = Hjks + Val(MSHFtzdmx.TextMatrix(i, 6))
Next i
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = Round(Hjjc, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = Round(Hjsk, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = Round(Hjks, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 10) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 11) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 12) = ""
lRsdata.Close
Set lRsdata = Nothing
On Error Resume Next
Dim lRs As New ADODB.Recordset
lRs.Close
lRs.Open "select small_id from fz_sk_data where fire_opening>=4 and operate_id=" & mOperate_id & "", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs.EOF
Combo1.AddItem lRs(0)
lRs.MoveNext
Wend
Dim lRs1 As New ADODB.Recordset
lRs1.Close
lRs1.Open "select distinct(length) from fz_sk_data where gun_name=(select gun from fz_sk_jbdata where operate_id=" & mOperate_id & ")", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs1.EOF
lRs1(0) = Format(lRs1(0), "0.0")
Combo2.AddItem lRs1(0)
lRs1.MoveNext
Wend
End FunctionPrivate Function HjMs()
Hjjc = 0
Hjsk = 0
Hjks = 0
For i = 1 To MSHFtzdmx.Rows - 2
If i = 1 Then
MSHFtzdmx.TextMatrix(i, 1) = Val(Text4.Text)
MSHFtzdmx.TextMatrix(i, 2) = MSHFtzdmx.TextMatrix(i, 1) - MSHFtzdmx.TextMatrix(i, 4)
Else
MSHFtzdmx.TextMatrix(i, 1) = MSHFtzdmx.TextMatrix(i - 1, 2) - MSHFtzdmx.TextMatrix(i, 3)
MSHFtzdmx.TextMatrix(i, 2) = MSHFtzdmx.TextMatrix(i, 1) - MSHFtzdmx.TextMatrix(i, 4)
End If
Hjjc = Hjjc + Val(MSHFtzdmx.TextMatrix(i, 3))
Hjsk = Hjsk + Val(MSHFtzdmx.TextMatrix(i, 4))
Hjks = Hjks + Val(MSHFtzdmx.TextMatrix(i, 6))
Next i
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = Round(Hjjc, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = Round(Hjsk, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = Round(Hjks, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""End Function
执行完红色字那行,就不执行蓝色字体那行。lRsdata读出的不止一条记录!!可显示的只有一行。为什么呢?
Dim Hjsk As Double
Dim Hjks As Double
Dim mRsQ As New ADODB.Recordset
Dim mOperate_id As String
Private Sub Form_Activate()
On Error Resume Next
mRsQ.Close
mRsQ.Open "select * from fz_sk_jbdata where operate_id=" & Val(gOperate_idg) & " and sign='0'", gCnSk, adOpenStatic, adLockReadOnly
If mRsQ.EOF = False Then
Call Xsdata
' mRsQ.MoveNext
End IfEnd Sub
Private Sub Form_Load()
On Error Resume Next
MSHFtzdmx.Rows = 2
MSHFtzdmx.Cols = 13
MSHFtzdmx.TextMatrix(0, 0) = "序号"
MSHFtzdmx.TextMatrix(0, 1) = "红"
MSHFtzdmx.TextMatrix(0, 2) = "白"
MSHFtzdmx.TextMatrix(0, 3) = "黑"
MSHFtzdmx.TextMatrix(0, 4) = "黄"
MSHFtzdmx.TextMatrix(0, 5) = "蓝"
MSHFtzdmx.TextMatrix(0, 6) = "紫"
MSHFtzdmx.TextMatrix(0, 7) = "棕"
MSHFtzdmx.TextMatrix(0, 8) = "灰"
MSHFtzdmx.TextMatrix(0, 9) = "青"
MSHFtzdmx.TextMatrix(0, 10) = "粉"
MSHFtzdmx.TextMatrix(0, 11) = "菊"
MSHFtzdmx.TextMatrix(0, 12) = "橙"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = "0"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 10) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 11) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 12) = ""
Dim i As Integer
For i = 0 To MSHFtzdmx.Cols - 1
If (MSHFtzdmx.Width - 400) > 0 Then MSHFtzdmx.ColWidth(i) = (MSHFtzdmx.Width - 400) / (MSHFtzdmx.Cols - 5)
Next i
MSHFtzdmx.ColWidth(5) = 0
MSHFtzdmx.ColWidth(7) = 0
MSHFtzdmx.ColWidth(8) = 0
MSHFtzdmx.ColWidth(9) = 0
MSHFtzdmx.ColWidth(10) = 0
Dim lRs As New ADODB.Recordset
lRs.Close
lRs.Open "select small_id from fz_sk_data where fire_opening>=4 and operate_id=" & Val(gOperate_idg) & "", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs.EOF
Combo1.AddItem lRs(0)
lRs.MoveNext
Wend
Dim lRs1 As New ADODB.Recordset
lRs1.Close
lRs1.Open "select distinct(gun_length) from fz_sk_gun where gun_name=(select gun from fz_sk_jbdata where operate_id=" & Val(gOperate_idg) & ")", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs1.EOF
lRs1(0) = Format(lRs1(0), "0.0")
Combo2.AddItem lRs1(0)
lRs1.MoveNext
Wend
End SubPrivate Function Xsdata()
If mRsQ.EOF = True Then Exit Function
Dim i As Integer
mOperate_id = mRsQ("operate_id")
gOperate_idg = mOperate_id
Dim lRsdata As New ADODB.Recordset
lRsdata.Open "select fz_sk_data.small_id, oil_bottom, oil_top, interlining,fire_opening, hole_close, hole_count,bullet_name,gun,zcsk,xwj,yh,choose_gun.choose_gunlen from fz_sk_data left join choose_gun on choose_gun.operate_id=fz_sk_data.operate_id where fz_sk_data.operate_id =" & mOperate_id & "", gCnSk, adOpenStatic, adLockReadOnly
MSHFtzdmx.Rows = 2
Call HjMs
MSHFtzdmx.Rows = lRsdata.RecordCount + MSHFtzdmx.Rows
'Text12.Text = lRsdata.RecordCount
While Not lRsdata.EOF
' If lRsdata.AbsolutePosition = 1 Then Text4.Text = lRsdata(1)
'If lRsdata.AbsolutePosition = lRsdata.RecordCount Then Text8.Text = lRsdata(2)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 0) = lRsdata(0)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 1) = lRsdata(1)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 2) = lRsdata(2)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 3) = lRsdata(3)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 4) = lRsdata(4)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 5) = IIf(lRsdata(5) = 0, "", lRsdata(5))
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 6) = lRsdata(6)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 7) = lRsdata(7)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 8) = lRsdata(8)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 9) = lRsdata(9)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 10) = lRsdata(10)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 11) = lRsdata(11)
MSHFtzdmx.TextMatrix(lRsdata.AbsolutePosition, 12) = lRsdata(12) lRsdata.MoveNext
Wend
Hjjc = 0
Hjsk = 0
Hjks = 0
For i = 1 To MSHFtzdmx.Rows - 2
Hjjc = Hjjc + Val(MSHFtzdmx.TextMatrix(i, 3))
Hjsk = Hjsk + Val(MSHFtzdmx.TextMatrix(i, 4))
Hjks = Hjks + Val(MSHFtzdmx.TextMatrix(i, 6))
Next i
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = Round(Hjjc, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = Round(Hjsk, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = Round(Hjks, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 10) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 11) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 12) = ""
lRsdata.Close
Set lRsdata = Nothing
On Error Resume Next
Dim lRs As New ADODB.Recordset
lRs.Close
lRs.Open "select small_id from fz_sk_data where fire_opening>=4 and operate_id=" & mOperate_id & "", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs.EOF
Combo1.AddItem lRs(0)
lRs.MoveNext
Wend
Dim lRs1 As New ADODB.Recordset
lRs1.Close
lRs1.Open "select distinct(length) from fz_sk_data where gun_name=(select gun from fz_sk_jbdata where operate_id=" & mOperate_id & ")", gCnSk, adOpenStatic, adLockReadOnly
While Not lRs1.EOF
lRs1(0) = Format(lRs1(0), "0.0")
Combo2.AddItem lRs1(0)
lRs1.MoveNext
Wend
End FunctionPrivate Function HjMs()
Hjjc = 0
Hjsk = 0
Hjks = 0
For i = 1 To MSHFtzdmx.Rows - 2
If i = 1 Then
MSHFtzdmx.TextMatrix(i, 1) = Val(Text4.Text)
MSHFtzdmx.TextMatrix(i, 2) = MSHFtzdmx.TextMatrix(i, 1) - MSHFtzdmx.TextMatrix(i, 4)
Else
MSHFtzdmx.TextMatrix(i, 1) = MSHFtzdmx.TextMatrix(i - 1, 2) - MSHFtzdmx.TextMatrix(i, 3)
MSHFtzdmx.TextMatrix(i, 2) = MSHFtzdmx.TextMatrix(i, 1) - MSHFtzdmx.TextMatrix(i, 4)
End If
Hjjc = Hjjc + Val(MSHFtzdmx.TextMatrix(i, 3))
Hjsk = Hjsk + Val(MSHFtzdmx.TextMatrix(i, 4))
Hjks = Hjks + Val(MSHFtzdmx.TextMatrix(i, 6))
Next i
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 0) = "合计"
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 1) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 2) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 3) = Round(Hjjc, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 4) = Round(Hjsk, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 5) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 6) = Round(Hjks, 2)
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 7) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 8) = ""
MSHFtzdmx.TextMatrix(MSHFtzdmx.Rows - 1, 9) = ""End Function
执行完红色字那行,就不执行蓝色字体那行。lRsdata读出的不止一条记录!!可显示的只有一行。为什么呢?
呵呵,不过我也不明白,我照你这么做可以移动啊!