首页 > 其他分享 >函数Function

函数Function

时间:2023-06-19 15:23:46浏览次数:51  
标签:Function 语句 End 函数 数据类型 返回值

函数的定义与调用Function

  Tips:函数与子过程的区别是,函数可以返回值。如果一个函数不返回值,它与子过程并无区别,其中调用方式与子过程相同。

  • 无参子函数定义与调用
    //无参子函数的定义:
    Function [函数名]() As [返回值类型]
        //语句1
        //语句2
        //...
        //语句n
        [函数名] = [返回值]
    End Function
    
    //无参子函数的调用:直接写函数名就好了 不用写括号
    //E.g:
    Sub Main()
        //函数返回值继续参与计算
        Dim result As Double
        result = RandNum + 3    //直接写函数名就好了
    End Sub
    
    '函数:返回一个随机值
    Function RandNum()
        RandNum = Rnd * 100      //[函数名] = [返回值]
    End Function
  • 有参子函数定义与调用
    Function [函数名]([变量名1] As [数据类型1],...[变量名n] As [数据类型n]) As [返回值类型]
        //语句1
        //语句2
        //...
        //语句3
        //[函数名] = [返回值]
    End Function
    
    //E.g:
    //子过程
    Sub Main()
        Dim result As Double
        result = Add(12, 345)
    End Sub
    
    //子函数:返回两数的和
    Function Add(num1 As Double, num2 As Double) As Double
        Add = num1 + num2
    End Function

    函数括号后面的 As 数据类型 虽然并不是必须的,但是我强烈建议加上。因为函数通常都需要有返回值,这个数据类型就表示着返回值的数据类型。

    函数体最后通常都带有一条返回值语句,把函数执行的结果赋值给函数名,就可以在调用这个函数的地方得到这个函数的执行结果。这个返回结果的数据类型应该与函数名后面As的数据类型一致,否则可能会出错。

函数的提前结束

Exit Function结束 当前函数

End 结束 当前运行的所有VBA 过程和函数

标签:Function,语句,End,函数,数据类型,返回值
From: https://www.cnblogs.com/YYZYCS/p/17491246.html

相关文章

  • My SQL--------My SQL函数
    TRIM():去掉空格RTRIM():去掉右面空格LTRIM():去掉左侧空格UPPER():转大写SOUNDEX:将任何文本串转为描述其语音表示的芝麻油数字模式的算法。SOUNDEX考虑了类似的发音字符和音节,使得能对字符串进行发音比较......
  • 回文函数
    回文函数,学习到了strlen()函数在获取数组时是从str[1]开始计算的,要想从str[1]开始需要-1;#include<stdio.h>#include<string.h>intmain(){inti,j,n;charstr[80];//存储字符串printf("请输入字符串:\n");gets(str);//从输入读取字符串,并赋值给数组strn=strlen(str);fo......
  • Python3中的函数对象
    在Python中一切皆对象,函数也是一种对象,有相关的属性和方法。对于任意对象,我们可以用dir()函数来获取其内置的属性及方法名,例如:defadd(a:int,b:int=1)->int:"""加法函数"""returna+bprint(dir(add))运行结果如下:['__annotations__','__call__','_......
  • 强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间
    强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验1.强化学习核心概念强化学习(reinforcementlearning,RL):智能体可以在与复杂且不确定的环境进行交互时,尝试使所获得的奖励最大化的算法。动......
  • MySQL时间函数的选择
    Oracle中获取系统当前的时间,可以用sysdate、systimestamp等函数,在MySQL中,同样有类似的函数可以使用,碰巧看到eygle大神最近的文章,短短几行文字,就介绍了MySQL中获取系统当前时间的来龙去脉。在MySQL中,获得系统当前时间可以使用now()函数,这是最简单和应用最广的函数。除此之外,curre......
  • Pycharm中print函数有end= 参数,控制台不打印输出
    Pycharm中print函数有end=参数,控制台不打印输出foriinrange(1,256):#寻找对称平方数square=str(i*i)#转为字符串ifsquare==square[::-1]:print(i,end='\t')循环中print函数有end=参数,无论end='\t'还是end=''end='9'e......
  • C++多态的原理(虚函数指针和虚函数表) --imxiangzi 好好看
     C++多态的原理(虚函数指针和虚函数表)1.虚函数指针和虚函数表2.继承中的虚函数表2.1单继承中的虚函数表2.2多继承中的虚函数表3.多态的原理4.总结1.虚函数指针和虚函数表以下代码:问类实例化出的对象占几个字节?#include<iostream>usingnamespacestd;classA{ intm_a;publi......
  • 【python基础】函数-值传递
    为了更好的认识函数,我们还要研究值传递问题,再研究这个问题之前,我们已经知道了函数之间的值传递,是实参变量值传递给形参变量,然后让形参变量在函数内完成相应的功能。但是因为数据类型的不同,这里的值传递产生的对实参变量的效果是不同的1.传递数据本质参数传递之间传递的肯定是数......
  • template - function parameter - type
    #include<iostream>#include<thread>#include<array>#include<functional>template<autofunc,std::size_tI>structparam_type;template<typenameRet,typename...Args,Ret(*func)(Args...),std::size_tI>struct......
  • CF455E. Function
    感觉不难啊,为什么是*2900捏。发现这个玩意的本质是最初在r,每次不动或向左移动一步,进行l次操作,求每次停留的格子权值之和的最小值。显然我们只会停留在至多一个格子上,假设停留在\(i\),那么权值之和就是\(\left(l-r+i\right)a_i+\sum\limits_{j=i+1}^ra_j\),且\(i\in[r-l+1,r......