VBA小计

教程使用环境

  • Windows10 insider 2004 19041.208
  • Microsoft office 专业增强版 2019

录制宏方法

在Excel中依次选择视图>宏>录制宏,填入名称和快捷键即可开始录制,会记录下接下来对excel表格的所有操作,对菜单操作不会记录;操作完后,点击视图>宏>结束录制,即可完成录制;可以通过查看录制进入Visual Basic for Application编辑界面

语法解释

  • Dim a as Integer - 定义变量
  • a = 5 - 给变量赋值
  • For i=5 to 30...Next - for循环语句
  • If 条件 then ... end if - 条件判断语句
  • selection.offset(x, y) - 在当前选中的单元格基础上横跨y列,纵跨x行选中单元格。直接操作是操作其值。
  • Selection.Row - 获取当前行的行号
  • Selection.Column - 获取当前列的列号
  • sheet1.cells(x, y) - 通过行号和列号直接定位单元格,直接操作是对值进行操作。

示例代码

以下代码实现了一个从第四行到第十一行对角线循环填充的功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub1()
'
' 宏1 宏
'
' 快捷键: Ctrl+k
'
Dim r As Integer
Dim c As Integer
Dim value As String
r = Selection.Row
c = Selection.Column
value = Selection.Offset(0, 0)
For j = 1 To 30
r = r + 1
If r > 11 Then
r = 4
End If
Sheet1.Cells(r, j + c) = value
Next
End Sub

全局使用

创建宏的时候,如果需要全局使用该宏,需要用一下方法操作:

  1. 创建时选择保存在个人宏工作簿
  2. 录制下宏操作,选择停止录制。
  3. 如果需要编辑VBS代码,需要先选择视图>窗口>取消隐藏,会自动打开一个PERSONAL.XLSB的文件,在该文件中点击查看宏>编辑即可进入VBS编辑界面。
  4. 编辑完成后,保存退出宏界面,然后在PERSONAL.XLSB文件中选择视图>窗口>隐藏,该文件就会隐藏。
  5. 在初始文件中就可以使用该宏,退出的时候,会弹窗是否保存PERSONAL.XLSB文件,选择保存即可。