vba显示正在加载_VBA学习笔记_20191009

全程使用兰色幻想80讲的课程,今天的主要内容包括

  • 1.什么是VBA
  • 2.VBA的对象、方法和属性
  • 3.判断语句
  • 4.今日彩蛋-自动设置目录代码

1、什么是VBA, 如何录制一个宏。如何快速启动VBA编辑器(alt+F11), VBA各个界面的介绍(这个百度一下大体了解即可)。

2、VBA的对象、方法和属性

a. VBA的对象:

  • 工作簿的表达方法:Workbooks; Workbooks(N);Workbooks ("工作簿名称");ActiveWorkbook;ThisWorkBook
  • 工作表的表达方法:Sheets("工作表名称"),Sheet1,Sheets(n),ActiveSheet,worksheet
  • 单元格的表示方法:cells 所有单元格;Range ("单元格地址");Cells(行数,列数);Activecell 正在选中或编辑的单元格;Selection 正被选中或选取的单元格或单元格区域

b. VBA的属性

  • 属性是VBA对象的特点。语法结构是“对象.属性=属性值”
  • 例如:ange("a1").Value = 100;Sheets(1).Name = "工作表改名了",Sheets("Sheet2").Range("a1").Value = "abcd",Range("A2").Interior.ColorIndex = 3

c. VBA的方法

  • VBA方法是作用于VBA对象上的动作;
  • 语法结构举例如下:Range("A1").Copy Range("A2");Sheet1.Move before:=Sheets("Sheet3")

3、VBA判断语句

  • if 判断语句
Sub 判断1() '单条件判断
  If Range("a1").Value > 0 Then
     Range("b1") = "正数"
  Else
     Range("b1") = "负数或0"
  End If
End Sub

Sub 判断2() '多条件判断
  If Range("a1").Value > 0 Then
     Range("b1") = "正数"
  ElseIf Range("a1") = 0 Then
     Range("b1") = "等于0"
  ElseIf Range("B1") <= 0 Then
     Range("b1") = "负数"
  End If
End Sub

Sub 多条件判断2()
 If Range("a1") <> "" And Range("a2") <> "" Then
   Range("a3") = Range("a1") * Range("a2")
 End If
End Sub
  • iff判断
Sub 判断4()
  Range("a3") = IIf(Range("a1") <= 0, "负数或零", "负数")
End Sub
  • select 判断
Sub 判断1() '单条件判断
  Select Case Range("a1").Value
  Case Is > 0
     Range("b1") = "正数"
  Case Else
     Range("b1") = "负数或0"
  End Select
End Sub

Sub 判断2() '多条件判断
  Select Case Range("a1").Value
  Case Is > 0
     Range("b1") = "正数"
  Case Is = 0
     Range("b1") = "0"
  Case Else
     Range("b1") = "负数"
  End Select
End Sub

Sub 判断3()
 If Range("a3") < "G" Then
   MsgBox "A-G"
 End If
End Sub
  • 区间判断
Sub if区间判断()
If Range("a2") <= 1000 Then
  Range("b2") = 0.01
ElseIf Range("a2") <= 3000 Then
  Range("b2") = 0.03
ElseIf Range("a2") > 3000 Then
  Range("b2") = 0.05
End If
End Sub

Sub select区间判断()
 Select Case Range("a2").Value
 Case 0 To 1000
   Range("b2") = 0.01
 Case 1001 To 3000
   Range("b2") = 0.03
 Case Is > 3000
   Range("b2") = 0.05
 End Select
End Sub

4. 今日彩蛋-自动设置目录

Sub 自动生成目录()
    Dim i As Integer
    Cells.Clear
        Cells(1, 1) = "序号"
        Cells(1, 2) = "名称"
        Cells(1, 3) = "链接"
        Range("A1:C1").Select
        Selection.Font.Bold = True
    For i = 2 To Sheets.Count
        Cells(i, 1) = i - 1
    Next
    For i = 2 To Sheets.Count
        Cells(i, 2) = Sheets(i).Name
    Next
    For i = 2 To Sheets.Count
        Cells(i, 3) = Sheets(i).Name
        ActiveSheet.Hyperlinks.Add anchor:=Cells(i, 3), Address:="", SubAddress:="'" & Sheets(i).Name & "'!A1"
    Next
End Sub

另附链接:如何将编写的宏加载到excel选项卡中:

https://jingyan.baidu.com/article/4dc40848753509c8d946f1a7.html​jingyan.baidu.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值