我正在寻找一张excel表来自动计算总数。
我正在为考勤管理系统创建一个excel。班上大约有30名学生。他们的注册号码(2011 / V / 01, 2011 / V / 02,....,2011 / V / 30)。他们每天都有很多课程。每个小时由讲师进行出勤(每个学生在签名表上签名)。当出勤表到达部门时,该官员准备计算缺席者。
警官将输入缺席学生的最后一个注册号码(例如:2011 / V / 05为05)。
开始时,总缺席为零。
当他/她在单元格A3中输入最后一个数字并按Enter键时,对应单元格应立即增加1.
在首次出席表中,2011 / V / 02,2011 / V / 05,2011 / V / 07和2011 / V / 13的注册号不存在
(Ex: cell A3 = 02 then cell D3 from 0 to 1).
(Ex: cell A3= 05 then cell D6 from 0 to 1).
(Ex: cell A3 = 07 then cell D8 from 0 to 1).
(Ex: cell A3 = 13 then cell D14 from 0 to 1).
In second attendance sheet 2011/V/03, 2011/V/05, 2011/V/13, 2011/V/16 and 2011/V/21 are absents
(Ex: cell A3 = 03 then cell D4 from 0 to 1).
(Ex: cell A3 = 05 then cell D6 from 1 to 2). (absent in first sheet,so 1 to 2)
(Ex: cell A3 = 13 then cell D14 from 1 to 2). (absent in first sheet,so 1 to 2)
(Ex: cell A3 = 16 then cell D17 from 0 to 1).
(Ex: cell A3 = 21 then cell D22 from 0 to 1).
第三张出席情况表2011 / V / 03和2011 / V / 05不在 (例如:细胞A3 = 03,然后细胞D4从1到2)。 (缺少第二张,所以1到2) (例如:细胞A3 = 05,然后细胞D6从2到3)。 (缺少第二张,所以2到3)
这种情况每天都会发生,直到出勤表被电脑化。
答案 0 :(得分:0)
使用非常简单的数据输入用户表单可以最好地实现您的目标。
Google “excel vba数据输入用户表单” ,您将找到优秀的教程。
跟着他们回到这里继续阅读这个答案。
我会创建两张纸和一张表格。
Sheet1将包含您的数据条目的日志。只有两列,日期和学生代码。
Sheet2将包含缺席计数。同样有两列,第一列是所有学生的列表,第二列是缺勤的运行次数。
表单将包含两个控件。一,单个字段用于学生代码(文本框或更精细的组合框,在初始化时使用sheet2第1列的所有学生代码构建)。还有两个,一个提交按钮。
在提交按钮的代码上,您应该添加一些代码以获取当前日期和所选学生代码,并将它们插入到sheet1的最后一行。
在sheet2上,第二列是一个公式,它只是相应学生代码在sheet1第2列中查找结果的计数。
答案 1 :(得分:0)
在数据输入表的代码模块中:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim student As String, f As Range
If Target.Cells.Count = 1 And Target.Address() = "$A$3" Then
student = "2011/V/" & Format(Target.Value, "00")
Set f = Me.Range("C:C").Find(what:=student, lookat:=xlWhole)
If Not f Is Nothing Then
Me.Range("A3:A4").ClearContents
f.Offset(0, 1).Value = f.Offset(0, 1).Value + 1
Else
Me.Range("A4").Value = "Student not found!"
End If
Me.Range("a3").Select
End If
End Sub