第一节

  • 语法
    • 判断
      • 单条件
      • 区间判断
    • 循环语句
  • 函数
    • 普通计算
  • 习题
    • 题目1:
    • 题目2
    • 题目3
    • 题目4(优化3)
    • 题目5

语法

判断

单条件

(If 位置;else位置;end if || select 名字.value ;名字is;名字else;end select)

Sub 判断1() '单条件判断If Range("a1").Value > 0 Then //对于输入的a 顺序进行判断 如果成立输出Range("b1") = "正数"//返回在表格b1中ElseRange("b1") = "负数或0"//反之输出End If //结束判断
End Sub

等价于

Sub 判断1() '单条件判断Select Case Range("a1").ValueCase Is > 0Range("b1") = "正数"Case ElseRange("b1") = "负数或0"End Select
End Sub

区间判断

if 位置条件。。。else if 位置条件。。。end if;分号等价于then

Sub if区间判断()
If Range("a2") <= 1000 ThenRange("b2") = 0.01
ElseIf Range("a2") <= 3000 ThenRange("b2") = 0.03
ElseIf Range("a2") > 3000 ThenRange("b2") = 0.05
End If
End Sub

select case位置.value;case 范to围;case is 大于xx;end select

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

循环语句

for 。。to 。。next。。用于数列有规律性

Sub t2()
Dim x As Integer//1、声明变量Dim x As 字符(Integer)为整数For x = 10000 To 2 Step -3//定义x的值初始到2的范围,step递增/递减函数 -3表示递减3Range("d" & x) = Range("b" & x) * Range("c" & x)//单元格dx表示d1000 = 单元格b1000*单元格c1000Next x//输出
End Sub步骤:

for 。。。each 。。。in 用于全局无规律

Sub s1()Dim rg As Range//声明rg对象For Each rg In Range("a1:b7,d5:e9")//选取单元格范围If rg = "" Then//如果是空空格rg = 0//填充End If//结束Next rg
End Sub

dowhile。。用于不知道循环多少次的时候


Sub s2()Dim x As IntegerDo while x < 14x = x + 1If Cells(x + 1, 1) <> Cells(x, 1) + 1 ThenCells(x, 2) = "断点"Exit DoEnd IfLoop
End Sub

函数

普通计算

一、在单元格中输入公式顺序进行
目的: 将数量和单价相乘=全额
'1、用VBA在单元格中输入普通公式

Sub t1()Range("d2") = "=b2*c2"//计算End SubSub t2()Dim x As IntegerFor i = 2 To 6//从i=2开始循环到6为止,for(int i = 2 ;i <= 6;i++)Cells(x, 4) = "=b" & x & "*c" & x//cells(赋值,列位置)b2*c2Next x//输出End Sub

习题

题目1:


录制宏,命名
1、选中cd
2、移动金额插入b列
3、工具栏数据筛选
4、添加按钮(只能调试一次不可以撤回)
5、调用宏

题目2

循环操作所有格式,填充背景颜色

1、操作第一遍格式录制宏
2、打开代码
3、循环语句
4、先定义一个变量类型
dim i as int..
for i = 1 to 50 //for(int i = 1;i <=50;i++)
复制录制宏格式
next
代码
Sub gys()
Dim i As Integer ' 定义变量整数
For i = 1 To 50 '循环for int i =1;i < 50;
With Selection.Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 65535.TintAndShade = 0.PatternTintAndShade = 0End WithActiveCell.Offset(3, 0).Range("A1").Select
Next i
End Sub

题目3

制作一个工资条,并还原

1、录制
2、插入模块复制核心代码(注意绝对引用和相对引用)
3、写循环语句fo to nextSub gzb1()
Dim i As Integer
Rows("1:1").Select
For i = 1 To 10Selection.CopyActiveCell.Offset(2, 0).Range("1:1").EntireRow.SelectSelection.Insert Shift:=xlDown
Next
End Sub


用按钮时

题目4(优化3)

题目5

对于男生称呼先生,女生称呼女士,理工代号lg,文科代号wk,删除空数据

【excel vba】循环和判断相关推荐

  1. Excel VBA 循环读取一个目录下面多个文件的内容,放到另外一个文件中

    循环读取一个目录下面多个文件的内容,放到另外一个文件中 Public Sub getInputInfo()On Error GoTo errl'OUT対象ファイル開くDim wbOut As Work ...

  2. Excel·VBA自定义函数筛选单元格区域重复值

    贴吧提问<哪位大神知道要怎么实现?>,Excel内置函数使用比较麻烦,VBA字典实现比较直观 自定义函数UNIQUE_IF筛选单元格区域中的值,可以选择返回其中的唯一值或重复值,并用分隔符 ...

  3. shell if多个条件判断_萌新关于Excel VBA中IF条件判断语句的一点心得体会

    作者:金人瑞 <Excel VBA175例无理论纯实战教程>学员 最近正在学习郑广学老师的VBA 175例教程,这是一篇新手向的文章,也是一个新手的总结,高手可以批评文章中的不足之处,也可 ...

  4. Excel VBA 讲座04 - 过程,变量,循环和IF语句

    关于Procedure/过程 前面介绍了Module,是我们存放代码的单位,类似C语言的一个源文件. 而模块是由各种代码块构成的,有procedures和functions. Procedures,有 ...

  5. Excel VBA中判断word文件是否打开,未打开则打开该文件

    需求与场景 在Excel的VBA中,打开Word文件是比较容易的,但判断某个word文件是否已经打开,则有些小坑需要注意. 因为工作需求,要把Excel中的数据写入到指定的word文件里(用链接的方式 ...

  6. EXCEL VBA判断字符长度

    需求:有一个导入EXCEL模板,需要判断excel里某列的字符串长度,本来用条件格式做的,但是条件格式会被CTRL+V给覆盖导致不起作用,所以用VBA来实现,代码如下.需要校验的是F列(校验是不是等于 ...

  7. excel vba 如何将日期周几转换成文字_Excel 从精通到入门

    Excel 从精通到入门 引子 Excel? 这么简单的东西有学的必要吗?公式加减乘除,诶等等这个日期怎么变成 #### 了,虽然文本数字搞不清楚,但也算熟练使用 Excel 啦. WOW, Awso ...

  8. 详解xlwings包,用Python代替Excel VBA

    详解xlwings包,用Python代替Excel VBA <代替VBA! 用Python轻松实现Excel编程>demo 主要内容 Python语法基础 Excel对象模型:OpenPy ...

  9. 来吧!带你玩转 Excel VBA

    来吧!带你玩转 Excel VBA(含CD光盘1张)(双色)(附带近500个VBA思考练习题,Exceltip.net出品) 罗刚君  杨嘉恺编著 ISBN 978-7-121-20627-6 201 ...

  10. 来吧 带你玩转 Excel VBA

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 来吧!带 ...

最新文章

  1. 【Apache】Apache的安装和配置
  2. 2019-10-16 13:39:37,494 ERROR [http-nio-8080-exec-10] util.JWTUtils (JWTUtils.java:76) - The Token h
  3. 中给函数赋读权限_教你如何使用MCGS昆仑通态设置密码增加权限
  4. 测试点2和测试点4错的来:1044 火星数字 (20分)
  5. 使用uWSGI部署django项目
  6. python泰坦尼克号数据预测_使用python预测泰坦尼克号生还
  7. Thymeleaf的入门(一)
  8. 微课|中学生可以这样学Python(例9.1):Excel导入SQLite(2)
  9. 推荐系统中稀疏特征 Embedding 的优化表示方法
  10. 【李宏毅2020 ML/DL】P14 Tips for training DNN | 激活函数、Maxout、正则、剪枝 Dropout
  11. AD19改变原理图图纸大小(A4改为A3
  12. java 中如何临时保存某输入值_java笔记临时存放
  13. oracle客户端sqlplus安装
  14. VMware Fusion Pro v10.1.6 苹果虚拟机免费版及解锁许可证
  15. 模糊逻辑(Fuzzy Logic)
  16. 流式数据传输 php,PHP录制实时流式传输到文件
  17. 风险资产的最优组合公式证明
  18. 苹果开发者申请-创建证书签名请求
  19. 要写码,又要做年终总结PPT?高效神器保住你的发际线
  20. 主板声卡坏了会不会有电流声_2020年|短视频直播间设备(手机,直播声卡,麦克风,监听耳机,摄影补光灯)选购推荐指南...

热门文章

  1. ubuntu系统分辨率只有640*480的解决办法,适用部分正方形屏幕
  2. Win11如何修改用户名?
  3. 华为畅享max有没有人脸识别_华为畅享MAX:轻奢外观下的智慧功能大揭秘
  4. three.js动画(Animation)
  5. 《钱进球场》:巅峰对决·棒球1号位
  6. MySQL - 存储引擎MyISAM和Innodb
  7. 配置VMware Workstation 主机模式下让虚拟机上网设置详细
  8. Anchor Based和Anchor Free
  9. 计算机教案word格式模板,Word 教案
  10. 200块享受高音质TWS蓝牙音乐