菜鸟请教VBA高手,我的代码该如何修改!急
程序代码,以下代码为A班领料
If rsc.EOF Then
Exit Sub
End If
row = 5
erow1 = row
srow1 = 0
Do While Not rsc.EOF
If row <> 5 Then
If st1 <> rsc!FHeadSelfB0433 Then
srow1 = 0
erow1 = row
Range("A" & row) = rsc!FHeadSelfB0433
Else
srow1 = srow1 + 1
Call hb(erow1, erow1 + srow1, "A", ":A")
End If
st1 = rsc!FHeadSelfB0433
Else
Range("A" & row) = rsc!FHeadSelfB0433
st1 = rsc!FHeadSelfB0433
End If
Range("B" & row) = rsc!FAuxPropIDName
Range("C" & row) = rsc!FItemModel
Range("D" & row) = rsc!FSecQty
Range("E" & row) = rsc!FAuxQty
sp_zl = sp_zl + rsc!FAuxQty
sp_sl = sp_sl + rsc!FSecQty
row = row + 1
rsc.movenext
Loop
Range("A" & row) = "A班领料合计:"
Range("D" & row) = sp_sl
Range("E" & row) = sp_zl
sp_zl = 0
sp_sl = 0
rsc.Close
row = row + 1
st1 = ""
以下为B班领料代码
rsc.Open Sql, conn
If rsc.EOF Then
Exit Sub
End If
erow1 = row
srow1 = 0
Do While Not rsc.EOF
If row <> 5 Then
If st1 <> rsc!FHeadSelfB0433 Then
srow1 = 0
erow1 = row
Range("A" & row) = rsc!FHeadSelfB0433
Else
srow1 = srow1 + 1
Call hb(erow1, erow1 + srow1, "A", ":A")
End If
st1 = rsc!FHeadSelfB0433
Else
Range("A" & row) = rsc!FHeadSelfB0433
st1 = rsc!FHeadSelfB0433
End If
Range("B" & row) = rsc!FAuxPropIDName
Range("C" & row) = rsc!FItemModel
Range("D" & row) = rsc!FSecQty
Range("E" & row) = rsc!FAuxQty
sp_zl = sp_zl + rsc!FAuxQty
sp_sl = sp_sl + rsc!FSecQty
row = row + 1
rsc.movenext
Loop
Range("A" & row) = "B班领料合计:"
Range("D" & row) = sp_sl
Range("E" & row) = sp_zl
sp_zl = 0
sp_sl = 0
rsc.Close
row = row + 1
st1 = ""
row = js + 1
Excel运行的结果是:
列 A F
行10 B班的领料汇总
行11 A班的领料汇总
也就是说A班的合计是行11,列A处,B班的合计在行10,列F处,请教在我的代码里如何实现A、B班的汇总自动合计到相同的行。将B班的汇总合并到行11,列F处。A、B班次的合计列是固定的,而行是不固定的。