`
foreach4
  • 浏览: 8675 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

VBA基础

vba 
阅读更多
ByVal or ByRef:
在VBA中,过程的传参方式有两种,按值或按引用。
如果按引用,即传递的是传入参数的地址,那么在过程中对参数的修改会反映到参数本身
如果按值,则会拷贝一份,那么在过程中对参数的修改不会反映到调用者
vba中默认是按地址传递。

Sub语法:
[Private | Public] [Static] Sub name [(arglist)]
[statements]
[Exit Sub]
[statements]
End Sub



函数语法:

[Public | Private][Static] Function name [(arglist)] [As type]
[statements]
[name = expression]
[Exit Function]
[statements]
[name = expression]
End Function



'函数可以返回结果,而sub不能

Sub test_sub()
    MsgBox "Hello World!"
    Call test_func          '如果只是调用函数,不接收返回值,则用call,否则必须用一个变量来接收
    ret = test_func()
    MsgBox ret
End Sub


Function test_func()
    Debug.Print "test_func enter..."
    test_func = 123  ' 一个函数必须要有返回值,且给函数设置返回值的方式就是将函数名作为变量,并赋值
End Function



Sub test_dim()

    '变量可以不用显式声明,直接拿来用(这点和python,perl类似),但不声明变量类型时,默认是variant类型
    g = 1
    g = "123"
    MsgBox g
    
    '声明一个变量h,并限制它为Integer类型
'    h As Integer
'    h = 5
    
    'dim用于声明变量,可以设置变量类型,并且dim修饰的变量的范围为 词法范围
    Dim a
    Dim b As String
    Dim c, d
    Dim e As String, f As Integer
    
End Sub

Sub test_scope()
    MsgBox g
End Sub

Sub test_type()
    Dim i As Integer
    Dim s As String
    Dim l As Long
    Dim si As Single
    Dim d As Double
    Dim de As decimals
    Dim b As Boolean
    Dim by As Byte
    Dim v As Variant
    Dim c As Currency
    Dim da As Date
    Dim o As Object
    
    
    
End Sub

' sub 的修饰符
'private, 只有本模块下的过程可访问
'public,本工程下的所有模块均可访问
'static,在调用sub时,保存中间变量

Sub test_exit()
    MsgBox 1
    Exit Sub
    MsgBox 2
End Sub

' 过程参数的 语法
'  [Optional] [ByVal | ByRef] [ParamArray] varname[( )] [As type][= defaultvalue]
'Optional后面的参数都是可选的, Optional 与 ParamArray 在参数列表中互斥


Function add(a, b)
    add = a + b
End Function

' 两种函数调用方式
Sub test_func()
 add 1, 2
 Call add(1, 2)
End Sub






分享到:
评论

相关推荐

    Excel VBA基础入门(PDF)

    ### Excel VBA基础入门知识点详解 #### 一、VBA语言基础 **1.1 标识符** - **定义**: 标识符是用于命名变量、常量、子程序等的基本元素。 - **规则**: 必须以字母开头;长度最长可达255个字符;不能包含特殊符号...

    AutoCAD 2014 二次开发 VBA 基础与实例.zip

    本教程"AutoCAD 2014 二次开发 VBA 基础与实例"专注于利用VBA进行AutoCAD的二次开发,适合初学者入门。VBA在AutoCAD中的应用主要体现在以下几个方面: 1. **基本概念与环境设置**:首先,你需要了解VBA的基本概念,...

    excel,VBA基础入门

    VBA 基础入门 VBA 是 Visual Basic For Application 的简称,是一种应用程序开发工具,建立在 Office 中。学习 VBA 的目的是为了对 Excel 进行二次开发,自定义和扩展 Excel 的功能。 什么是 VBA? VBA 是一种...

    EXCEL_VBA基础入门

    ### EXCEL_VBA基础入门详解 #### 一、引言 在日常工作与学习中,Excel作为一款强大的数据处理工具,其高效性和灵活性深受广大用户的喜爱。然而,对于那些需要复杂逻辑处理或者自动化任务的需求,Excel内建的功能...

    [《Excel.VBA基础入门》配套光盘].Ptpress.iso

    [《Excel.VBA基础入门》配套光盘].Ptpress.iso[《Excel.VBA基础入门》配套光盘].Ptpress.iso

    excel_VBA基础入门

    ### Excel VBA基础入门:揭开自动化办公的神秘面纱 #### 什么是VBA?为什么要学习VBA? VBA,即Visual Basic for Applications,是Microsoft Office套件中的编程语言,特别适用于自动化Excel、Word等应用程序的...

    EXCEL VBA基础入门示例文件

    本压缩包包含的“EXCEL VBA基础入门示例文件”旨在帮助初学者理解并掌握VBA的基础知识。 1. **VBA简介** - VBA是Visual Basic的子集,专为应用程序开发而设计,如Microsoft Office套件。 - 它允许用户通过编写...

    Excel VBA基础入门教材光盘资料part1

    这个资料为Excel VBA基础入门教材光盘资料内容,仍然可以单独作为Excel VBA基础入门学习的辅助学习资料。

    Excel VBA基础入门教材光盘资料part2

    这个资料为Excel VBA基础入门教材光盘资料内容,仍然可以单独作为Excel VBA基础入门学习的辅助学习资料。

    Excel VBA基础入门教材光盘资料part3

    这个资料为Excel VBA基础入门教材光盘资料内容,仍然可以单独作为Excel VBA基础入门学习的辅助学习资料。

    Excel VBA基础入门教材光盘资料part4

    这个资料为Excel VBA基础入门教材光盘资料内容,仍然可以单独作为Excel VBA基础入门学习的辅助学习资料。

    Excel VBA基础入门(第二版)

    Excel VBA基础入门,VBA,VBA开发者参考资料。

    Microsoft Office 2000 VBA基础

    Microsoft Office 2000 VBA基础(分为二部份)

    菜鸟谈VBA最最基础入门

    VBA 基础入门知识点总结 在 Excel 中,VBA 是一个非常强大的工具,它可以帮助我们自动化许多重复的任务,提高工作效率。但是,对于初学者来说,VBA 的代码可能看起来像外星文一样难以理解。因此,本文将从基础开始...

    vba 基础

    vba 基础 VBA(Visual Basic for Applications)是 Microsoft 公司开发的一种应用程序编程语言,广泛应用于微软 Office 软件包中的 Excel、Word、PowerPoint 等应用程序中。本篇文章将详细讲述 VBA 的基础知识,...

    VBA基础知识

    以下是一些关于VBA基础知识的关键点: 1. **Excel中的公式使用**:VBA允许用户在代码中使用公式,就像在单元格中那样。例如,你可以直接通过VBA代码对单元格进行运算,如`Val(x) + 1`,这会提取范围`x`的值并加1。 ...

    excel vba基础

    在“VBA基础”文件中,你可能进一步学习到: 11. **高级话题**:如类模块(Class Modules)的概念,面向对象编程的基础,以及如何创建和使用自定义对象。 12. **文件操作**:如何读写文本文件、CSV文件,甚至与...

    VBA基础入门

    ### VBA基础入门知识点详解 #### 一、什么是VBA?为什么学习VBA? - **定义**:VBA,即Visual Basic for Applications,是一种由微软公司开发的应用程序开发工具,集成于Microsoft Office套件(包括Excel、Word等...

    excel_VBA基础教程

    Excel VBA 基础教程 Excel VBA 基础教程旨在为初学 VBA 应用提供指导,帮助初学者快速掌握 VBA 的基础知识。VBA(Visual Basic for Applications)是一种通用的自动化语言,由微软开发,旨在使应用程序自动化。 ...

Global site tag (gtag.js) - Google Analytics