全民一起VBA基础篇第八课:过程与函数

过程

可以通过call来调用子程序,达到结构清晰,功能明确的作用

Option Explicit
Sub 汇总和登记()
	Call 汇总
	Call 登记
End Sub
Sub 我只需要汇总()
	Dim i, j, total         '定义循环变量和累加器
	Dim wperson As Worksheet     '定义wperson为工作表
	Dim wall As Worksheet        '用来存总分的工作表

	Set wall = Worksheets("总分榜") '用字符串来表示不会搞混淆
	
	For i = 1 To Worksheets.Count '用worksheets来调用属性,这里count是算有多少工作表
	
	    Set wperson = Worksheets(i)      '对对象进行赋值用set,有点类似于C语言的指针
	    If wperson.Name <> "总分榜" Then
	        total = 0   
	   		j = 2	    
	        Do While wperson.Cells(j, 1) <> ""	        
		        total = total + wperson.Cells(j, 2)  '不能忘了wperson. 否则会编译出错	        
		        j = j + 1	        
	        Loop        
	    	wperson.Cells(2, 3) = total
	    End If	           
	Next i
End Sub
Sub 我只需要登记()
	Dim k, i
	Dim w1 As Worksheet
	Dim w2 As Worksheet
	Set w2 = Worksheets("总分榜")
	k = 2
	For i = 1 To Worksheets.Count '用worksheets来调用属性,这里count是算有多少工作表
	    Set w1 = Worksheets(i)
	    If w1.Name <> "总分榜" Then    '赋值到总分榜里面	    
	        w2.Cells(k, 1) = w1.Cells(1, 2)	        
	        w2.Cells(k, 2) = w1.Cells(2, 3)	        
	        k = k + 1	        
	    End If
	Next i
End Sub

在这里插入图片描述

函数

Option Explicit
Sub 扫描()
	Dim score, level
	Dim i
	i = 3
	
	Do While Cells(i, 2) <> ""
	    score = Cells(i, 3)
	    level = 分类(score)     '传参调用函数
	    Cells(i, 4) = level
	    i = i + 1
	Loop
	
	End Sub
	
	Function 分类(s)        '函数头改为function ()用于接收参数
	Dim score, level
	score = s
	    If score > 0 And score < 30 Then
	        level = "甲型"
	        ElseIf score >= 30 And score < 60 Then
	        level = "乙型"
	        ElseIf score >= 60 And score < 90 Then
	        level = "丙型"
	        ElseIf score >= 90 And score < 100 Then
	        level = "丁型"
	    End If
	分类 = level        '返参
End Function

把扫描链接到控件,可以直接使用该段代码
或者是可以把 分类 用作函数来使用
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值