📄 i-
字号:
Dbl_Qcyete = Dbl_Qcyete + Dbl_Jejfhj - Dbl_Jedfhj
Dbl_Qcslte = Dbl_Qcslte + Dbl_Sljfhj - Dbl_Sldfhj
Dbl_Qcwbte = Dbl_Qcwbte + Dbl_Wbjfhj - Dbl_Wbdfhj
'如果本期合计数据不为零则输出本月合计,本年累计,期末余额
If Dbl_Jejfhj <> 0 Or Dbl_Jedfhj <> 0 Or Dbl_Sljfhj <> 0 Or Dbl_Sldfhj <> 0 Or Dbl_Wbjfhj <> 0 Or Dbl_Wbdfhj <> 0 Then
CxbbGrid.AddItem ""
Jsqte = Jsqte + 1
Call Sub_OutPeriodSum(Jsqte, Bln_EndFlag, Int_DqPeriod, Dbl_Jejfhj, Dbl_Jedfhj, Dbl_Sljfhj, Dbl_Sldfhj, Dbl_Wbjfhj, Dbl_Wbdfhj)
'输出余额
Call Sub_OutBalance(Jsqte, Bln_EndFlag, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
CxbbGrid.AddItem ""
Jsqte = Jsqte + 1
Call Sub_OutYearSum(Jsqte, Bln_EndFlag, Int_DqPeriod, Dbl_Jejflj, Dbl_Jedflj, Dbl_Sljflj, Dbl_Sldflj, Dbl_Wbjflj, Dbl_Wbdflj)
End If
Next Int_DqPeriod
'重置网格行高
For Jsqte = CxbbGrid.FixedRows To CxbbGrid.Rows - 1
CxbbGrid.RowHeight(Jsqte) = Sjhgd
Next Jsqte
End Sub
Private Sub Combo_AccFormat_Click() '用户选择不同帐页格式
Dim Int_Coljsq As Integer '网格列临时计数器
'为了加快显示速度
CxbbGrid.Redraw = False
For Int_Coljsq = Qslz To CxbbGrid.Cols - 1
CxbbGrid.ColHidden(Int_Coljsq) = True
Next Int_Coljsq
Select Case Combo_AccFormat
Case "金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '月
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '日
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("005", GridStr(), Szzls)) = False '借方.借方
CxbbGrid.ColHidden(Sydz("009", GridStr(), Szzls)) = False '贷方.贷方
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("014", GridStr(), Szzls)) = False '余额.余额
Case "外币金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '月
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '日
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("007", GridStr(), Szzls)) = False '借方.外币
CxbbGrid.ColHidden(Sydz("008", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("011", GridStr(), Szzls)) = False '贷方.外币
CxbbGrid.ColHidden(Sydz("012", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("016", GridStr(), Szzls)) = False '余额.外币
CxbbGrid.ColHidden(Sydz("017", GridStr(), Szzls)) = False '余额.金额
Case "数量金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '月
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '日
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("006", GridStr(), Szzls)) = False '借方.数量
CxbbGrid.ColHidden(Sydz("008", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("010", GridStr(), Szzls)) = False '贷方.数量
CxbbGrid.ColHidden(Sydz("012", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("015", GridStr(), Szzls)) = False '余额.数量
CxbbGrid.ColHidden(Sydz("017", GridStr(), Szzls)) = False '余额.金额
Case "数量外币式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '月
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '日
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("006", GridStr(), Szzls)) = False '借方.数量
CxbbGrid.ColHidden(Sydz("007", GridStr(), Szzls)) = False '借方.外币
CxbbGrid.ColHidden(Sydz("008", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("010", GridStr(), Szzls)) = False '贷方.数量
CxbbGrid.ColHidden(Sydz("011", GridStr(), Szzls)) = False '贷方.外币
CxbbGrid.ColHidden(Sydz("012", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("015", GridStr(), Szzls)) = False '余额.数量
CxbbGrid.ColHidden(Sydz("016", GridStr(), Szzls)) = False '余额.外币
CxbbGrid.ColHidden(Sydz("017", GridStr(), Szzls)) = False '余额.金额
End Select
CxbbGrid.Redraw = True
End Sub
Private Sub Sub_OutBalance(Jsqte As Long, Bln_EndFlag As Boolean, Dbl_Qcyete#, Dbl_Qcslte#, Dbl_Qcwbte#) '输出余额
If Dbl_Qcyete = 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = "平" '期初方向
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = Dbl_Qcslte
End If
If Bln_EndFlag And Dbl_Qcwbte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = Dbl_Qcwbte
End If
Else
If Dbl_Qcyete > 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = "借"
CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = Dbl_Qcyete
CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = Dbl_Qcyete
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = Dbl_Qcslte
End If
If Bln_EndFlag And Dbl_Qcwbte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = Dbl_Qcwbte
End If
Else
CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = "贷"
CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = -Dbl_Qcyete
CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = -Dbl_Qcyete
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = -Dbl_Qcslte
End If
If Bln_EndFlag And Dbl_Qcwbte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = -Dbl_Qcwbte
End If
End If
End If
End Sub
Private Sub Sub_OutPeriodSum(Jsqte As Long, Bln_EndFlag As Boolean, Int_DqPeriod%, Dbl_Jejfhj#, Dbl_Jedfhj#, Dbl_Sljfhj#, Dbl_Sldfhj#, Dbl_Wbjfhj#, Dbl_Wbdfhj#) '输出本月合计
CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Mid(Trim(Str(100 + Int_DqPeriod)), 2, 2)
CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = "本月合计"
If Dbl_Jejfhj <> 0 Then '本月借方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("005", GridStr(), Szzls)) = Dbl_Jejfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = Dbl_Jejfhj
End If
If Dbl_Jedfhj <> 0 Then '本月贷方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Dbl_Jedfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = Dbl_Jedfhj
End If
'只有末级科目才显示数量和外币
If Bln_EndFlag Then
If Dbl_Sljfhj <> 0 Then '本月借方数量合计
CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Dbl_Sljfhj
End If
If Dbl_Sldfhj <> 0 Then '本月贷方数量合计
CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Dbl_Sldfhj
End If
If Dbl_Wbjfhj <> 0 Then '本月借方外币合计
CxbbGrid.TextMatrix(Jsqte, Sydz("007", GridStr(), Szzls)) = Dbl_Wbjfhj
End If
If Dbl_Wbdfhj <> 0 Then '本月贷方外币合计
CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = Dbl_Wbdfhj
End If
End If
End Sub
Private Sub Sub_OutYearSum(Jsqte As Long, Bln_EndFlag As Boolean, Int_DqPeriod%, Dbl_Jejflj#, Dbl_Jedflj#, Dbl_Sljflj#, Dbl_Sldflj#, Dbl_Wbjflj#, Dbl_Wbdflj#) '输出本年累计
CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Mid(Trim(Str(100 + Int_DqPeriod)), 2, 2)
CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = "本年累计"
If Dbl_Jejflj <> 0 Then '本年借方金额累计
CxbbGrid.TextMatrix(Jsqte, Sydz("005", GridStr(), Szzls)) = Dbl_Jejflj
CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = Dbl_Jejflj
End If
If Dbl_Jedflj <> 0 Then '本年贷方金额累计
CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Dbl_Jedflj
CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = Dbl_Jedflj
End If
'只有末级科目才显示数量和外币
If Bln_EndFlag Then
If Dbl_Sljflj <> 0 Then '本年借方数量累计
CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Dbl_Sljflj
End If
If Dbl_Sldflj <> 0 Then '本年贷方数量累计
CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Dbl_Sldflj
End If
If Dbl_Wbjflj <> 0 Then '本年借方外币累计
CxbbGrid.TextMatrix(Jsqte, Sydz("007", GridStr(), Szzls)) = Dbl_Wbjflj
End If
If Dbl_Wbdflj <> 0 Then '本年贷方外币累计
CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = Dbl_Wbdflj
End If
End If
End Sub
Private Sub Sub_Lcmxz() '联查科目明细帐
Dim Str_Ccode As String '查询科目
'如果科目为空或用户定位网格月份为空则不进行查询
If Trim(Combo_QueryCcode.Text) <> "" And Trim(CxbbGrid.TextMatrix(CxbbGrid.Row, Sydz("001", GridStr(), Szzls))) <> "" Then
Str_Ccode = Trim(Mid(Combo_QueryCcode.Text, 1, InStr(1, Combo_QueryCcode.Text, " ") - 1))
Else
Exit Sub
End If
'联查明细帐
If Trim(Str_Ccode) <> "" Then
ZB_Frmkmmxztj.Combo_Kjqj(0).Text = Mid(Trim(Str(10000 + Xtyear)), 2, 4) + "." + Trim(CxbbGrid.TextMatrix(CxbbGrid.Row, Sydz("001", GridStr(), Szzls))) '起始会计期间
ZB_Frmkmmxztj.Combo_Kjqj(1).Text = Mid(Trim(Str(10000 + Xtyear)), 2, 4) + "." + Trim(CxbbGrid.TextMatrix(CxbbGrid.Row, Sydz("001", GridStr(), Szzls))) '终止会计期间
ZB_Frmkmmxztj.LrText(0).Text = Str_Ccode '查询科目
ZB_Frmkmmxztj.LrText(1).Text = Str_Ccode '查询科目
ZB_Frmkmmxztj.Chk_NotBook.Value = ZB_Frmzflztj.Chk_NotBook.Value '是否包含未记帐凭证
ZB_Frmkmmxzjg.Timer1.Enabled = True '激活查询明细帐过程
ZB_Frmkmmxzjg.Show
ZB_Frmkmmxzjg.SetFocus
End If
End Sub
Private Sub bbyl(bbylte As Boolean) '报表打印预览
Dim Bbzbt$, Bbxbt() As String, bbxbtzzxs() As Integer, Bbxbtgs As Integer
Dim Bbbwh() As String, Bbbwhzzxs() As Integer, Bbbwhgs As Integer
Bbxbtgs = 1 '报 表 小 标 题 行 数
Bbbwhgs = 0 '报 表 表 尾 行 数
ReDim Bbxbt(1 To Bbxbtgs)
ReDim bbxbtzzxs(1 To Bbxbtgs)
If Bbbwhgs <> 0 Then
ReDim Bbbwh(1 To Bbbwhgs)
ReDim Bbbwhzzxs(1 To Bbbwhgs)
End If
Bbzbt = ReportTitle
Bbxbt(1) = Space(2) + "科目名称:" + Me.Combo_QueryCcode.Text
bbxbtzzxs(1) = 0 '报表行组织形式(0-居左 1-居中 2-居右)
Call Scyxsjb(CxbbGrid) '生成报表数据
Call Scdybb(Dyymctbl, Bbzbt, Bbxbt(), bbxbtzzxs(), Bbxbtgs, Bbbwh(), Bbbwhzzxs(), Bbbwhgs, bbylte)
If Not bbylte Then
Unload DY_Tybbyldy
End If
End Sub
Private Sub Sub_Lxdy() '帐页连续打印(帐页每批尽量少选)
Dim Bbzbt$, Bbxbt() As String, bbxbtzzxs() As Integer, Bbxbtgs As Integer
Dim Bbbwh() As String, Bbbwhzzxs() As Integer, Bbbwhgs As Integer
Dim Jsqte As Integer
Dim YAnswer As Integer
'用户确认是否开始连续打印帐页
Tsxx = "请确认是否开始连续打印帐页?"
YAnswer = Xtxxts(Tsxx, 2, 2)
If YAnswer <> 1 Then
Exit Sub
End If
'初始化连续打印状态
Cmd_CancelPrint.Visible = True
Cmd_CancelPrint.SetFocus
Cmd_CancelPrint.Refresh
Bln_CancelPrint = False
Bln_Printing = True
'循环输出打印作业
For Jsqte = 0 To Combo_QueryCcode.ListCount - 1
Combo_QueryCcode.Text = Combo_QueryCcode.List(Jsqte)
Bbxbtgs = 1 '报 表 小 标 题 行 数
Bbbwhgs = 0 '报 表 表 尾 行 数
ReDim Bbxbt(1 To Bbxbtgs)
ReDim bbxbtzzxs(1 To Bbxbtgs)
If Bbbwhgs <> 0 Then
ReDim Bbbwh(1 To Bbbwhgs)
ReDim Bbbwhzzxs(1 To Bbbwhgs)
End If
Bbzbt = ReportTitle
Bbxbt(1) = Space(2) + "科目名称:" + Me.Combo_QueryCcode.Text
bbxbtzzxs(1) = 1 '报表行组织形式(0-居左 1-居中 2-居右)
Call Scyxsjb(CxbbGrid) '生成报表数据
Call Scdybb(Dyymctbl, Bbzbt, Bbxbt(), bbxbtzzxs(), Bbxbtgs, Bbbwh(), Bbbwhzzxs(), Bbbwhgs, False, True)
Unload DY_Tybbyldy
DoEvents
If Bln_CancelPrint Then
Bln_Printing = False
Exit Sub
End If
Next Jsqte
Bln_Printing = False
End Sub
Private Sub Cmd_CancelPrint_Click() '取消帐页连续打印
Bln_CancelPrint = True
Cmd_CancelPrint.Visible = False
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -