杰瑞科技汇

Excel 2010 VBA教程从哪开始学?

Excel 2010 VBA 完整教程

第一部分:VBA 入门

1 什么是 VBA?

VBA 的全称是 Visual Basic for Applications(Visual Basic 应用程序),它是一种内嵌在 Microsoft Office 应用程序(如 Excel, Word, PowerPoint)中的编程语言。

Excel 2010 VBA教程从哪开始学?-图1
(图片来源网络,侵删)
  • 简单来说:VBA 就是你用来“指挥”Excel 自动完成任务的“脚本语言”。
  • 能做什么
    • 自动化重复性任务:每天需要将一个报表格式化、排序、汇总并生成图表,录制一个宏,然后用 VBA 优化它,以后只需点击一下按钮即可完成。
    • 创建自定义函数:Excel 内置函数不够用?你可以用 VBA 编写自己的函数(UDF - User Defined Function),并在工作表中像使用 SUM() 函数一样使用它。
    • 开发自定义界面:可以创建自定义的选项卡、按钮、对话框,让 Excel 更符合你的工作流。
    • 与外部程序交互:可以读取文本文件、操作其他应用程序、甚至连接数据库。

2 如何启用“开发工具”选项卡?

在 Excel 2010 中,VBA 的所有工具都集中在“开发工具”选项卡下,但这个选项卡默认是隐藏的。

  1. 点击左上角的 “文件” 选项卡。
  2. 选择 “选项”
  3. 在弹出的 “Excel 选项” 窗口中,选择左侧的 “自定义功能区”
  4. 在右侧的 “主选项卡” 列表中,勾选 “开发工具” 复选框。
  5. 点击 “确定”

你可以在 Excel 顶部菜单栏看到 “开发工具” 选项卡了。

3 你的第一个 VBA 程序:录制宏

录制宏是学习 VBA 最简单、最快的方式,它会把你的一系列操作转换成 VBA 代码。

示例:录制一个简单的格式化宏

Excel 2010 VBA教程从哪开始学?-图2
(图片来源网络,侵删)
  1. 点击 “开发工具” 选项卡。
  2. “代码” 组中,点击 “录制宏”
  3. 在弹出的对话框中:
    • 宏名:输入一个有意义的名字,FormatHeader。(不要有空格,可以使用下划线 _
    • 快捷键:可以设置一个快捷键,Ctrl+Shift+H。(注意:Ctrl+字母是内置的,最好用 Ctrl+Shift
    • 保存在:选择 “当前工作簿”,这样宏才能随文件一起保存。
    • 说明:可以简单描述一下这个宏是做什么的。
  4. 点击 “确定”,录制已经开始。
  5. 在工作表中执行以下操作:
    • 选中 A1 单元格。
    • 输入文字 "销售报表"。
    • 选中 A1:C1 区域。
    • 点击 “开始” 选项卡,将字体设置为 “加粗”“居中”,并填充一个背景色(比如浅蓝色)。
    • 调整列宽,让文字显示完整。
  6. 操作完成后,回到 “开发工具” 选项卡,点击 “停止录制”

如何运行你录制的宏?

  1. 选中任意一个单元格。
  2. Ctrl+Shift+H(你设置的快捷键),或者:
  3. 点击 “开发工具” -> “宏”,在列表中选择 FormatHeader,然后点击 “执行”

你会发现,刚才录制的格式化操作被完美地复现了!

4 查看和编辑录制的代码

录制的宏背后就是 VBA 代码,我们来一探究竟。

  1. 点击 “开发工具” -> “宏”
  2. 选择 FormatHeader,然后点击 “编辑” 按钮。

一个名为 “Microsoft Visual Basic for Applications” 的窗口(简称 VBE 编辑器)会弹出来。

Excel 2010 VBA教程从哪开始学?-图3
(图片来源网络,侵删)

你会看到类似下面的代码:

Sub FormatHeader()
    ' 格式化表头
    With Selection.Font
        .Name = "宋体"
        .FontStyle = "常规"
        .Size = 11
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 12611584 ' 这是浅蓝色的代码
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
End Sub

代码解读

  • Sub ... End Sub:定义了一个名为 FormatHeader 的宏(过程)。
  • 单引号后面的内容是注释,程序会自动忽略,用于解释代码。
  • With ... End With:这是 VBA 的一个简化结构,表示接下来的所有操作都是针对 Selection(当前选中区域)的 .Font(字体)属性。
  • 点号表示“对象的属性”,.Name 是名字,.Size 是大小。

第二部分:VBA 核心基础

1 VBE 编辑器介绍

熟悉 VBE 编辑器是编写 VBA 代码的第一步。

  • 菜单栏:文件、编辑、视图、插入、调试、运行、工具等。
  • 工具栏:包含常用命令,如“运行子过程/用户窗体”、“中断”、“设计模式”、“属性窗口”等。
  • 工程资源管理器:显示当前工作簿的所有 VBA 组件,可以在这里插入模块(存放代码)、工作表(存放与特定工作表相关的代码)、工作簿(存放与整个工作簿相关的代码)。
  • 属性窗口:显示和设置选中对象(如工作表、模块、按钮)的属性,选中一个模块,可以在属性窗口修改它的 Name
  • 代码窗口:在这里编写、查看和编辑你的 VBA 代码。

2 VBA 基本语法

A. 变量

变量是存储数据的容器,在使用变量前,最好先声明它。

  • 声明变量:使用 Dim 语句。

    Dim MyName As String      ' 声明一个名为 MyName 的字符串变量
    Dim MyAge As Integer      ' 声明一个名为 MyAge 的整数变量
    Dim MyPrice As Double     ' 声明一个名为 MyPrice 的双精度浮点数变量
    Dim IsCompleted As Boolean ' 声明一个名为 IsCompleted 的布尔值变量 (True/False)
  • 赋值:使用 号。

    MyName = "张三"
    MyAge = 30
    MyPrice = 99.98
    IsCompleted = True

B. 注释

  • 单行注释:使用英文单引号 。
  • 多行注释:在 VBA 7.1 及更高版本(Excel 2010 支持)中,可以使用 Rem 关键字,但更通用的方法是使用单引号。

C. 常量

常量的值在程序运行期间不会改变。

Const PI As Double = 3.14159
Const CompanyName As String = "ABC科技有限公司"

D. 运算符

  • 算术运算符: (加), (减), (乘), (除), ^ (乘方), Mod (取余)。
  • 比较运算符: (等于), <> (不等于), > (大于), < (小于), >= (大于等于), <= (小于等于),结果为 TrueFalse
  • 逻辑运算符:`
分享:
扫描分享到社交APP
上一篇
下一篇