【烟花原创】VBA零基础之第10篇 认识语句

在上一篇认识Sub过程中,有提到“ Sub过程是一系列由 Sub 和 End Sub 语句所包含起来的 Visual Basic 语句”,今天我们就来一起来认识语句(打个预防针,理论有点多,不过看不明白也不会影响大家写代码的)。

一、那什么是语句了?
       在Visual Basic中,语句是一个完整的命令。它可以包含关键字、运算符、变量、常数,以及表达式。
       每个语句都属于下列三种分类之一:
       1.声明语句
       为变量、常数、或程序取名称,并且指定一个数据类型。
       可以使用声明语句去命名和定义过程、变量、数组以及常数。
       当声明一个过程、变量或常数时,也同时定义了它的范围,而此范围是取决于声明位置以及用什么关键字来声明它。
       例如:
       Sub ApplyFormat()   
              Const limit As Integer = 33   
              Dim myCell As Range   
              '更多的语句
       End Sub

2.赋值语句
       指定一个值或表达式给变量或常数。
       赋值语句一般都伴随=号出现
       例如:
       name="hwc2ycy"
       range("a1").value=10086

3.可执行语句
       可执行语句可以执行一个方法或者函数,并且可以循环或从代码块中分支执行。
       另外,系统也提供了很多实现不同功能的语句。
       例如:
       Sub ApplyFormat()
              Const limit As Integer = 33
              For Each c In Worksheets("Sheet1").Range("MyRange").Cells
                         If c.Value > limit Then
                                    With c.Font
                                   .Bold = True
                                               .Italic = True
                                    End With
                         End If
              Next c
              MsgBox "All done!"
       End Sub

示例使用 For Each...Next 语句来重复名称为 MyRange 范围内的每个单元格,而此范围在活动的 Microsoft Excel 工作簿的 Sheet1 中。
       If...Then...Else 语句检查单元格的值。如果它的值超过 33,则 With 语句设置单元格中 Font 对象的 Bold 和 Italic 属性。而 If...Then...Else 语句会以 End If 结束。
       With 语句可以节省代码键入次数,因为所包含的语句会自动的执行于紧接在 With 关键字后面的对象中。
       Next 语句会去调用单元格集合中的下一个单元格,而此单元格集合是包含于 MyRange 中。
       MsgBox 函数(它显示一个固有的 Visual Basic 对话框)显示一个信息用来指出 Sub 过程已经完成执行。

二、将语句连续地写在多行
       通常是将一个语句写在同一行中,但也可以利用一个续行符将语句连续到下一行中。
       例如:
      
       Sub DemoBox()  '该过程声明一个字符串变量,
                        Dim myVar As String
                  myVar = "Hello World!"
                MsgBox Prompt:= myVar,  _
                                    Title:="第一个VBA过程",  _
                                    Buttons:=vbInformation
       End Sub

在上面的示例中,可执行语句 MsgBox 被接续的写在三行中。
       从示例中可以发现,所谓的续行符,其实就是空格后接着开发环境中使用的下划线 (_) ,将一行代码延伸成两行以上。
       但是,不能在字符串表达式中用续行符来继续一行代码。

三、注释
       注释是对代码的说明,比如设计思路,功能,特别的备注等等。
       写代码容易,要让人家看懂你的代码就不那么容易了
       有了注释,他人要读懂代码,日后的代码维护就会轻松很多。
       Visual Basic 在运行过程时,会忽略掉注释。注释行可由单引号(英文的')或 Rem 接着一个空格做为开始,并且可以加在过程的任何地方。
       为了在语句的同一行中添加注释,必须在语句后面插入一个单引号,然后加上注释文本。在缺少的设置下,注释会以绿色文本显示。

四、检查语法错误
       如果在键入一行代码后按下 ENTER 键,此行代码以红色文本显示(同时可能也显示一个错误信息),则必须找出语句中的错误并更正它。

(0)

相关推荐

  • VBA 程序结构入门

    从本篇开始,我们进入 VBA 语法的另外一个重要概念,程序结构. 上一章学习的变量.数据类型.运算符等概念,是 VBA 中'静态'的部分.相对的,程序结构是 VBA 中 '动态' 的部分.学习完程序结 ...

  • VBA 编程基础

    11.3.1 了解 Visual Basic 语法 本节解释最常见的语法元素. 11.3.1.1 Activate 方法的语法 语法:object.Activate 在 Activate 方法的语法中 ...

  • 简单的IF分支语句,写在一行

    编写VBA代码比录制宏优秀的一个地方,在于可以执行分支循环的操作. 今天介绍分支语句. 先看以下一段代码: 像以上三行代码就是顺序的结构,做完第一件事情,做第二件事情,做完第二件事情做第三十件事情. ...

  • 【烟花原创】VBA零基础之第19篇 Goto语句

    通过Goto语句,可以无条件地转移到过程中的指定的行,从而实现不同程序段间作流程控制. 语法: GoTo Line Line:必要参数,line可以是过程内任意的行号或行标签. 什么是行号? 用来识别 ...

  • 【烟花原创】VBA零基础之第30篇 对象(五)

    一篇我们讲了如何引用对象,主要是通过从对象集合中进行引用,今天我们讲讲如何使用对象变量来引用对象. 什么是对象变量呢? 前面已经有过讲变量了,通俗的说,就是变量的类型是对象类型,象单元格,工作表,工作 ...

  • 【烟花原创】VBA零基础之第28篇 对象(三)

    上一篇讲到了对象,在VBA中,还有一个非常重要的概念:集合Collections 集合是一个包含一组类型相同的对象集.另外,其实集合自身也是一个对象. 下面列出一有些经常使用到的集合对象: 工作簿集合 ...

  • 【烟花原创】VBA零基础之第12篇 常量

    上一篇讲了变量,这一讲咱们聊聊常量(也有MS管叫常数). 一.什么是常量     常量就是程序在运行时保持一个固定的值的命名项目.     常量可以是字符串,数值,另一常量,或者任何(除Is之外) 算 ...

  • 【烟花原创】VBA零基础之第29篇 对象(四)

    引用对象是非常重要的,因为在代码里访问对象时必须指明需要操作的对象. 例如在日常中我们找某人的,肯定会喊某人的名字(不认识的可以喊美女帅哥),人家才会理你. 可在VBA代码中,你必须实打实的指明某个特 ...

  • 【烟花原创】VBA零基础之第27篇 对象(二)

    上一篇我们讲到Excel自身就是一个对象,应用程序(Application)是这个对象层次中的最顶层,下面列出了在Application对象中一些经常使用到的对象: 引用Addin 窗口Window ...

  • 【烟花原创】VBA零基础之第26篇 对象(一)

    对象,这词大家再熟悉不过了,此对象非彼对象. 对象代表应用程序中的元素. 例如在Excel中,我们用到的单元格,工作表,工作簿,图表,数据透视表等等都是对象. 引用JAVA<编程思想>里面 ...

  • 【烟花原创】VBA零基础之第18篇 Do…Loop循环 (二)

    上一篇讲的是当使用 While 关键字去检查 Do...Loop 语句中的条件时,有两种方法. 可以在进入循环之前检查条件,也可以在循环至少运行一次之后才检查条件. 今天要讲的是在Do-Loop循环中 ...

  • 【烟花原创】VBA零基础之第17篇 Do…Loop循环 (一)

    上一篇聊过了以指定次数执行语句的For Next循环,但是当我们不知道循环具体会运行多少次,但能通过某种条件的变化来实现控制循环的开始和结束,这便是今天咱们要聊聊的的Do-Loop循环. 一.当条件为 ...