Excel表格宏命令教学二:VBA基础

2 VBA基础

VBA基础包括

  • 变量的声明,定义,赋值,取值,数据类型
  • Excel表格的基本操作
  • VBA自带函数的使用方法

2.1 变量

2.1.1 变量类型

根据数值类型可以分为数值,字符,日期,布尔等类型;
数值类型的数据用来存储数字,比如 1.2 ,10, 1000,
字符类型用来存储字符串,比如 helloworld,你好
布尔类型,就是 true/false

2.1.2 变量声明

语法:Dim varname as varType // varname 是变量名 vartype是变量类型 比如
``

Dim myage as Integer // 声明一个整数变量

Dim myname as String // 声明一个字符串变量

2.1.3 变量的赋值

myage = 18 // 整数赋值
myname = "Eric" // 字符串赋值

2.1.4 变量的使用
m = 12
n = 36

x = m * n

2.1.5 变量的范围

全局变量:Public varname as type
局部变量:Dim varname as type

全局变量在整个文件内都可用,局部变量只在函数内部可以使用

Public Myage as Integer // 全局变量
Myage = 18
Sub MyFunc()
    Dim myname As String // 局部变量
    myname = "Eric"
    Worksheets(1).Range("A1").Value = myname //使用局部变量
    Worksheets(1).Range("A2").Value = Myage // 使用全局变量
End Sub

2.2 Excel表格基本操作

2.2.1 定位sheet

我们知道Excel表格默认有三个Sheet(sheet1,sheet2,sheet3)

在这里插入图片描述

那我们在VBA 程序里如何取得这三个Sheet呢? 演示如下,为了方便演示,我在每个sheet的A1 单元格分别填写不同的内容 “A in sheet1”,“B in sheet2”

在这里插入图片描述在这里插入图片描述
下面我写一段代码,使用下标的方式来定位sheet,分别从sheet1 和 sheet2 里取A1 单元格里的内容

Sub mytest()
Dim MyString As String

MyString = Worksheets(1).Range("A1").Value

MsgBox (MyString)
MyString = Worksheets(2).Range("A1").Value

MsgBox (MyString)
MyString = Worksheets(3).Range("A1").Value

MsgBox (MyString)

End Sub

在这里插入图片描述
在Excel 表格里找到宏,查看宏,点击执行,
在这里插入图片描述
分别取出A1 的值,并用弹窗的形式展示出来。
在这里插入图片描述
在这里插入图片描述

2.2.2 定位Sheet的其他方式

除了使用数字下标1,2,3 分别获取sheet1,sheet2,
MyString = Worksheets(1).Range("A1").Value
也可以直接指定名称来定位sheet,比如:
MyString = Worksheets("sheet1").Range("A1").Value
MyString = Worksheets("sheet2").Range("A1").Value
也可以达到同样的效果。
自己可以试验一下

2.3 VBA 自带函数的使用

如同在编辑栏里直接写SUM(A1,B1) 就可以直接使 A1 和B1 单元格的内容相加,VBA里也可以直接使用SUM函数。
在这里插入图片描述

Sub mytest()
Dim MySum As Integer
a1 = Range("A1")  // 获取A1的值
b1 = Range("B1") // 获取B1的值
MySum = Application.WorksheetFunction.Sum(a1, b1)
Worksheets("sheet1").Range("C1").Value = MySum
End Sub

在Excel 表格运行

在这里插入图片描述

另外其他函数可以参考官方文档: https://docs.microsoft.com/zh-cn/office/vba/api/excel.worksheetfunction
https://docs.microsoft.com/zh-cn/office/vba/api/overview/excel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值