【excel vba】循环和判断
第一节
- 语法
- 判断
- 单条件
- 区间判断
- 循环语句
- 函数
- 普通计算
- 习题
- 题目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】循环和判断相关推荐
- Excel VBA 循环读取一个目录下面多个文件的内容,放到另外一个文件中
循环读取一个目录下面多个文件的内容,放到另外一个文件中 Public Sub getInputInfo()On Error GoTo errl'OUT対象ファイル開くDim wbOut As Work ...
- Excel·VBA自定义函数筛选单元格区域重复值
贴吧提问<哪位大神知道要怎么实现?>,Excel内置函数使用比较麻烦,VBA字典实现比较直观 自定义函数UNIQUE_IF筛选单元格区域中的值,可以选择返回其中的唯一值或重复值,并用分隔符 ...
- shell if多个条件判断_萌新关于Excel VBA中IF条件判断语句的一点心得体会
作者:金人瑞 <Excel VBA175例无理论纯实战教程>学员 最近正在学习郑广学老师的VBA 175例教程,这是一篇新手向的文章,也是一个新手的总结,高手可以批评文章中的不足之处,也可 ...
- Excel VBA 讲座04 - 过程,变量,循环和IF语句
关于Procedure/过程 前面介绍了Module,是我们存放代码的单位,类似C语言的一个源文件. 而模块是由各种代码块构成的,有procedures和functions. Procedures,有 ...
- Excel VBA中判断word文件是否打开,未打开则打开该文件
需求与场景 在Excel的VBA中,打开Word文件是比较容易的,但判断某个word文件是否已经打开,则有些小坑需要注意. 因为工作需求,要把Excel中的数据写入到指定的word文件里(用链接的方式 ...
- EXCEL VBA判断字符长度
需求:有一个导入EXCEL模板,需要判断excel里某列的字符串长度,本来用条件格式做的,但是条件格式会被CTRL+V给覆盖导致不起作用,所以用VBA来实现,代码如下.需要校验的是F列(校验是不是等于 ...
- excel vba 如何将日期周几转换成文字_Excel 从精通到入门
Excel 从精通到入门 引子 Excel? 这么简单的东西有学的必要吗?公式加减乘除,诶等等这个日期怎么变成 #### 了,虽然文本数字搞不清楚,但也算熟练使用 Excel 啦. WOW, Awso ...
- 详解xlwings包,用Python代替Excel VBA
详解xlwings包,用Python代替Excel VBA <代替VBA! 用Python轻松实现Excel编程>demo 主要内容 Python语法基础 Excel对象模型:OpenPy ...
- 来吧!带你玩转 Excel VBA
来吧!带你玩转 Excel VBA(含CD光盘1张)(双色)(附带近500个VBA思考练习题,Exceltip.net出品) 罗刚君 杨嘉恺编著 ISBN 978-7-121-20627-6 201 ...
- 来吧 带你玩转 Excel VBA
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 来吧!带 ...
最新文章
- 【Apache】Apache的安装和配置
- 2019-10-16 13:39:37,494 ERROR [http-nio-8080-exec-10] util.JWTUtils (JWTUtils.java:76) - The Token h
- 中给函数赋读权限_教你如何使用MCGS昆仑通态设置密码增加权限
- 测试点2和测试点4错的来:1044 火星数字 (20分)
- 使用uWSGI部署django项目
- python泰坦尼克号数据预测_使用python预测泰坦尼克号生还
- Thymeleaf的入门(一)
- 微课|中学生可以这样学Python(例9.1):Excel导入SQLite(2)
- 推荐系统中稀疏特征 Embedding 的优化表示方法
- 【李宏毅2020 ML/DL】P14 Tips for training DNN | 激活函数、Maxout、正则、剪枝 Dropout
- AD19改变原理图图纸大小(A4改为A3
- java 中如何临时保存某输入值_java笔记临时存放
- oracle客户端sqlplus安装
- VMware Fusion Pro v10.1.6 苹果虚拟机免费版及解锁许可证
- 模糊逻辑(Fuzzy Logic)
- 流式数据传输 php,PHP录制实时流式传输到文件
- 风险资产的最优组合公式证明
- 苹果开发者申请-创建证书签名请求
- 要写码,又要做年终总结PPT?高效神器保住你的发际线
- 主板声卡坏了会不会有电流声_2020年|短视频直播间设备(手机,直播声卡,麦克风,监听耳机,摄影补光灯)选购推荐指南...
热门文章
- ubuntu系统分辨率只有640*480的解决办法,适用部分正方形屏幕
- Win11如何修改用户名?
- 华为畅享max有没有人脸识别_华为畅享MAX:轻奢外观下的智慧功能大揭秘
- three.js动画(Animation)
- 《钱进球场》:巅峰对决·棒球1号位
- MySQL - 存储引擎MyISAM和Innodb
- 配置VMware Workstation 主机模式下让虚拟机上网设置详细
- Anchor Based和Anchor Free
- 计算机教案word格式模板,Word 教案
- 200块享受高音质TWS蓝牙音乐