Excel宏编程的基础语法

1. Sheet页操作

1.1. 选中Sheet页

方法:

Sheets("<sheet页名>").Select

示例:

Sheets("Sheet1").Select '选择Sheet1

2. 单元格操作

2.1. 选中单元格

2.1.1. Range方法

方法:

①Range("<单元格地址>").Select '选中单个单元格

②Range("<单元格地址>:<单元格地址>[,<单元格地址>……]").Select '选中多个单元格

示例:

Range("C9").Select             '选中“C9”单元格
Range("A1:B2").Select          '选中“A1”、“A2”、“B1”、“B2”四个连续的单元格
Range("12:12").Select          '选中第12行
Range("B:B").Select            '选中第B列
Range("A1:A2,B7,2:2").Select   '选中“A1”、“A2”、“B7”五个不连续的单元格和第二行

2.1.2. Cells方法

方法:

Cells(第几行, "第几列").Select

示例:

Cells(1, "A").Select     '选中 A1 单元格
Cells.Select             '选中当前SHEET中的所有单元格

2.1.3. Rows和Columns

方法:

①Rows("<行地址>:<行地址>").Select '选中整行

②Columns("<列地址>:<列地址>").Select '选中整列

示例:

Rows("2:2").Select      '选中第2行
Rows("2:5").Select      '选中2到5行
Columns("A:A").Select   '选中A列
Columns("E:B").Select   '选中E到B列

2.2. 获取单元格的值

方法:

①Range("<单元格地址>").Text

②Cells(行, "列").Value

示例:

Range("A1").Text        '获取A1的值
Cells(1, "B").Value     '获取B1的值

2.3. 给单元格赋值

2.3.1. Cells直接赋值

方法:

Cells(行, "列") = <值>

示例:

Cells(1, "B") = "张三李四"    '给单元格B1赋值为字符串"张三李四"
Cells(1, "B") = 1            '给单元格B1赋值为数字1

2.3.2. Range激活单元格赋值

方法:

ActiveCell.FormulaR1C1 = <值>

示例:

Range("A1").Select
ActiveCell.FormulaR1C1 = "Name"     '单个单元格赋值

Range("A2:B3").Select
Range("A2").Activate
ActiveCell.FormulaR1C1 = "BUG"
Range("B2").Activate
ActiveCell.FormulaR1C1 = "12"       '多个单元格赋值

2.4. 清理单元格

方法:

Selection.ClearContents

示例:

Range("A1:A2, B7, 2:2").Select   '选中“A1”、“A2”、“B7”五个不连续的单元格和第二行
Selection.ClearContents          '清空“A1”、“A2”、“B7”五个不连续单元格中的所有内容

2.5. 复制粘贴

2.5.1. 直接复制粘贴

方法:

①Range("<单元格地址>").Copy

②Range("<单元格地址>").Paste

示例:

Range("A1:B1").Copy                             '复制“A1”、“B1”两个单元格
Range("F2").Paste                               '从“F2”单元格开始粘贴

2.5.2. 选中单元格再复制粘贴

方法:

①Selection.Cut '剪切

②Selection.Copy '复制

③ActiveSheet.Paste '粘贴

示例:

Range("A1").Select
Selection.Cut
Range("A2").Select
ActiveSheet.Paste
Selection.Copy
Range("A3").Select
ActiveSheet.Paste

2.5.3. 选择性粘贴

方法:

Selection.PasteSpecial <option>

参数:

全部

xlPasteAll

公式

xlPasteFormulas

数值

xlPasteValues

格式

xlPasteFormats

批注

xlPasteComments

验证

xlPasteValidation

所有使用源主题的单元

xlPasteAllUsingSourceTheme

边框除外

xlPasteAllExceptBorders

列宽

xlPasteColumnWidths

公式和数字格式

xlPasteFormulasAndNumberFormats

值和数字格式

xlPasteValuesAndNumberFormats

所有合并条件格式

xlPasteAllMergingConditionalFormats

示例:

Cells(1, "A").Select
Selection.Copy
Range("A2").Select
Selection.PasteSpecial (xlPasteAll)         '选择性粘贴,全部

Range("A1:B1").Copy
Range("F2").PasteSpecial (xlPasteValues)    '选择性粘贴,值

3. 行列操作

3.1. 改变列宽

方法:

①Selection.ColumnWidth = <宽度值> '指定列宽

②EntireColumn.AutoFit '自动改变列宽

示例:

Columns("A:A").Select
Selection.ColumnWidth = 30             '改变已选列的宽度

EntireColumn.AutoFit                   '自动改变列宽
Columns("C:C").EntireColumn.AutoFit    '根据C列的内容自动改变列的宽度

4. 变量

4.1. 数据类型

类型名称

关键字

整型

Integer

单精度

Single

双精度

Double

字符型

String

长整型

Long

4.2. 变量声明与定义

Public:可定义全局变量

Dim:可定义局部变量

方法:

Dim 变量名 As 数据类型

Public 变量名 As 数据类型

示例:

Dim i As Integer        '声明局部变量i,整型
Public j As String      '声明全局变量j,字符型

4.3. 变量赋值

方法:

①给基本类型的变量赋值,直接使用 变量名 = 值 的语法即可

②给对象类型的变量赋值,需要利用到 Set 关键字,语法为 Set 变量名= 值

示例:

Sub example()
  ' 给基本类型变量赋值
  Dim localNum As Integer
  localNum = 22
  
  ' 给对象类型变量赋值  
  Dim obj As Range
  Set obj = Range("c1")
End Sub
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值