报表统计(VBA编程源码下载,产量统计,月度生产报表统计)
Posted
篇首语:忙于采集的蜜蜂,无暇在人前高谈阔论。本文由小常识网(cha138.com)小编为大家整理,主要介绍了报表统计(VBA编程源码下载,产量统计,月度生产报表统计)相关的知识,希望对你有一定的参考价值。
报表统计(VBA编程源码下载,产量统计,月度生产报表统计)
产量记录管理,本文内容中关于产量录入,统计的一些基本功能。
如需要,可及时收藏备用。
上图为录入页,形式简单只有相关人员日期和数量,如果需要可以再进行添加。
上图为统计表,可以对某人的某个月进行记录统计,实际上也算一个查询的功能。
上图为月度统计表。
每月统计数据实现统计计算。
代码
数据录入
Sub 录入信息()On Error Resume NextDim xArr(1 To 4)xArr(1) = Range("D3").ValuexArr(2) = Range("F3").ValuexArr(3) = Range("D4").ValuexArr(4) = Range("F4").ValueDim s As WorksheetSet s = ThisWorkbook.Worksheets("产量统计表")Dim ir As Integer, ic As Integerir = 3ic = 4s.Cells(ir, 1).Resize(1, ic).Insert shift:=xlShiftDownWith s.Cells(ir, 1).Resize(1, ic) .Clear .ClearFormats .RowHeight = 18 .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .Borders.LineStyle = 1 .Item(1).NumberFormat = "yyyy/mm/dd" .Value = xArrEnd Withir = s.Cells(s.Rows.Count, 1).End(xlUp).Rows.Cells(ir, 3).Formula = "=Sum(C3:C" & ir - 1 & ")"s.Cells(ir, 4).Formula = "=Sum(D3:D" & ir - 1 & ")"Set s = NothingErase xArrEnd Sub
个人统计
Sub 个人搜索()On Error Resume NextDim xName As String, xCountA As Double, xCountB As Double, xMouth As IntegerDim s As WorksheetSet s = ActiveSheetDelCells sxName = VBA.UCase(VBA.Trim(Range("F2").Value))If VBA.Len(xName) = 0 Then Exit SubIf Not VBA.IsNumeric(s.Range("F3").Value) Then MsgBox "月份错误!请输入1~12之间数字": Exit SubxMouth = Range("F3").ValueIf xMouth > 12 Then MsgBox "月份错误!请输入1~12之间数字": Exit SubDim xR As Range, r As Range Dim xArr, ir As Long, ic As Long, i As Long, eir As Long xArr = s.Range("A2").CurrentRegionir = UBound(xArr, 1)ic = 2For i = LBound(xArr, 1) + 1 To ir If VBA.IsDate(xArr(i, 1)) Then If xMouth = VBA.DatePart("m", xArr(i, 1)) Then If VBA.DatePart("d", xArr(i, 1)) <= 26 Then If VBA.UCase(xArr(i, 2)) = xName Then xCountA = xCountA + VBA.CDbl(xArr(i, 3)) xCountB = xCountB + VBA.CDbl(xArr(i, 4)) AddCells xArr, s, i End If End If ElseIf xMouth - 1 = VBA.DatePart("m", xArr(i, 1)) Then If VBA.DatePart("d", xArr(i, 1)) > 26 Then If VBA.UCase(xArr(i, 2)) = xName Then xCountA = xCountA + VBA.CDbl(xArr(i, 3)) xCountB = xCountB + VBA.CDbl(xArr(i, 4)) AddCells xArr, s, i End If End If End If End IfNext i eir = s.Range("G" & s.Rows.Count).End(xlUp).Row eir = eir + 1 If eir > 2 Then s.Range("G" & eir).Value = "合计" s.Range("H" & eir).Value = xName s.Range("I" & eir).Value = xCountA s.Range("J" & eir).Value = xCountB End If With s.Range("G3:J" & eir) .Borders.LineStyle = 1 .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .RowHeight = 20 End WithErase xArrSet s = NothingEnd Sub
月度汇总
Sub 月度汇总()On Error Resume NextDim xCountA As Double, xCountB As Double, xMouth As IntegerDim s As Worksheet, c As Worksheet, j As Worksheet, jr As LongSet s = ThisWorkbook.Worksheets("设置")Set c = ThisWorkbook.Worksheets("产量统计表")Set j = ActiveSheetj.Cells(3, 1).Resize(j.UsedRange.Rows.Count - 2, 4).DeleteIf Not VBA.IsNumeric(s.Range("E1").Value) Then Exit SubxMouth = Range("E1").ValueDim xArr, xi As Long, ir As Long, ic As LongxArr = c.Range("A2").CurrentRegionir = UBound(xArr, 1)ic = 2Dim sArr, si As Long, sr As Longsr = s.Cells(1, 1).End(xlDown).RowsArr = s.Range("A2:A" & sr)sr = UBound(sArr, 1)For si = LBound(sArr, 1) To sr xCountA = 0 xCountB = 0 For xi = LBound(xArr, 1) To ir If VBA.UCase(xArr(xi, ic)) = VBA.UCase(sArr(si, 1)) Then '如果姓名相同 If VBA.IsDate(xArr(xi, 1)) Then If xMouth = VBA.DatePart("m", xArr(xi, 1)) Then If VBA.DatePart("d", xArr(xi, 1)) <= 26 Then xCountA = xCountA + VBA.CDbl(xArr(xi, 3)) xCountB = xCountB + VBA.CDbl(xArr(xi, 4)) End If ElseIf xMouth - 1 = VBA.DatePart("m", xArr(xi, 1)) Then If VBA.DatePart("d", xArr(xi, 1)) > 26 Then xCountA = xCountA + VBA.CDbl(xArr(xi, 3)) xCountB = xCountB + VBA.CDbl(xArr(xi, 4)) End If End If End If End If Next xi jr = j.Cells(j.Rows.Count, 1).End(xlUp).Row + 1 j.Cells(jr, 1).Value = "=row()-2" j.Cells(jr, 2).Value = sArr(si, 1) j.Cells(jr, 3).Value = xCountA j.Cells(jr, 4).Value = xCountB With j.Cells(jr, 1).Resize(1, 4) .RowHeight = 18 .Borders.LineStyle = 1 .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End WithNext sij.Range("A1").Value = xMouth & "月度汇总表"Erase xArrSet j = NothingSet s = NothingSet c = NothingEnd Sub
产量统计也是一个重要的环节,特别是一些中小型企业,生产密集型企业更是需要一个高效的统计表来进行结算。
如有需要可以查看产量统计表,Excel vba。
欢迎关注、收藏
---END---
相关参考
洗涤助剂三聚磷酸钠(2022年上半年中国合成洗涤剂产量月度统计表【图表】)
合成洗涤剂是由表面活性剂(如烷基苯磺酸钠、脂肪醇硫酸钠)和各种助剂(如三聚磷酸钠)、辅助剂配制而成的一种洗涤用品。洗涤剂的主要成分是表面活性剂,表面活性剂是分子结构中含有亲水基和亲油基两部分的有机化合...
洗涤助剂三聚磷酸钠(2022年上半年中国合成洗涤剂产量月度统计表【图表】)
合成洗涤剂是由表面活性剂(如烷基苯磺酸钠、脂肪醇硫酸钠)和各种助剂(如三聚磷酸钠)、辅助剂配制而成的一种洗涤用品。洗涤剂的主要成分是表面活性剂,表面活性剂是分子结构中含有亲水基和亲油基两部分的有机化合...
常用的统计分析软件(推荐一个宝藏级数据可视化工具,零编程做报表)
有些数据分析软件对IT的依赖比较重,在制作报表的过程中需要用到SQL,这就导致了IT人员懂技术不懂业务,业务人员懂业务不懂技术,数据分析做来做去总是差点什么的局面。要是遇到了IT部门相对较弱的情况,还会加重IT负担...
氢氧化钠,化学式为NaOH,俗称烧碱、火碱、苛性钠,为一种具有强腐蚀性的强碱,一般为片状或块状形态,易溶于水(溶于水时放热)并形成碱性溶液,另有潮解性,易吸取空气中的水蒸气(潮解)和二氧化碳(变质),可加...
氢氧化钠,化学式为NaOH,俗称烧碱、火碱、苛性钠,为一种具有强腐蚀性的强碱,一般为片状或块状形态,易溶于水(溶于水时放热)并形成碱性溶液,另有潮解性,易吸取空气中的水蒸气(潮解)和二氧化碳(变质),可加...
海口造纸机(2020年中国机制纸及纸板(外购原纸加工除外)产量月度统计)
机制纸(machinemadepaper)区别于手工纸而言。指在各种类型的造纸机上抄造而成的纸和纸板。具有定量稳定、匀度好、强度较高的特点。分类:印刷用纸及纸板类,书写、制图及复制用纸及纸板类,包装用纸及纸板类,生活、卫生及...
海口造纸机(2020年中国机制纸及纸板(外购原纸加工除外)产量月度统计)
机制纸(machinemadepaper)区别于手工纸而言。指在各种类型的造纸机上抄造而成的纸和纸板。具有定量稳定、匀度好、强度较高的特点。分类:印刷用纸及纸板类,书写、制图及复制用纸及纸板类,包装用纸及纸板类,生活、卫生及...
江苏电动工具(2022年上半年中国电动手提式工具产量月度统计表【图表】)
以电动机或电磁铁为动力,通过传动机构驱动工作头的一种机械化工具称为电动工具。它是用手握持操作,以小功率电动机或电磁铁作为动力,通过传动机构来驱动作业工作头的工具。电动工具主要分为金属切削电动工具、研磨...
应收款管理系统参数(HIS系统源码 医院信息管理系统源码 his源码)
...卡、会员刷卡、社区刷卡、划价收费一体化、总分类统计报表、多元汇总
指纹考勤机怎么导出打卡记录(excel vba vbnet考勤时间处理通用方法(1))
先看上图,这是一张非常普通的考勤统计表,多是从考勤机里面导出来的。所以我们可以清楚看到日期时间格式非常整齐,全无手工做表痕迹。(那些还在用原始手工方法打考勤的,填表、整理、统计估计会喷一口老血。)现在...