利用vba求excel总人数,及格人数
上一篇 /
下一篇 2015-04-24 14:30:10
/ 个人分类:QTP
进一步学习
QTP的过程中,最近在
学习的是VB语言在EXCEL中的应用。方便后期excel的调用。新手上路,求指教
这次的任务主要是两个,一是把表头变成绿色底,把小于60分的变为红字。刚接触VB语言,
百度了很多,不过网上的知识都挺杂的。还有就是,又验证了那一点,大多数工具都是先录制再改代码。同样,EXCEL的VBA中也提供了代码录制。修改后的代码如下
Sub Macro5()
Range("A1:D1").Select
Range("D1").Activate
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 5287936
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("B2:C68").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="=60"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
ActiveWindow.SmallScroll Down:=-36
End Sub
第二个任务是算出总人数,班级语文成绩及格人数,数学成绩及格人数,其实实现的方式和函数非常多,这只是其中一种,仅供参考。
Sub sum()
Dim s
Dim i
Dim m
n = 0
j = 0
s = ActiveSheet.UsedRange.Rows.Count - 1 '班级总人数
Cells(1, 5) = "学生数量为:" & s
For i = 2 To s + 1
If (Sheet1.Cells(i, 2).Value) > 60 Then j = j + 1
Next i
Cells(2, 5) = "语文及格人数:" & j
For m = 2 To s + 1
If (Sheet1.Cells(m, 3).Value) > 60 Then n = n + 1
Next m
Cells(3, 5) = "数学及格人数:" & n
End Sub
收藏
举报
TAG:
Excel