网站首页 > 精选教程 正文
【分享成果,随喜正能量】职场,没有人关心你快不快乐,所有人都会看你有没有用。VBA可以给您带来快乐,证明您的价值。
《VBA代码解决方案》这套教程是我最早推出的教程,目前已经是第二版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一下把自己喜欢的代码摆好。
这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过度教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是第6讲:行、列中最后非空单元格的获得
第六讲 利用VBA获得指定行、列中最后一个非空单元格
使用VBA对工作表进行操作时,经常需要定位到指定行或列中最后一个非空单元格,此时可以使用Range对象的End属性,在取得单元格对象后便能获得该单元格的相关属性,如单元格地址、行列号、数值等,如下面的代码所示。
1 利用End()属性获得指列中的最后一个非空单元格的代码
Sub mynz_6_1() '第6讲 利用VBA获得指定行、列中的最后一个非空单元格
Dim rng As Range
Set rng = Sheets("6").Range("A1048576").End(xlUp)
MsgBox "A列中最后一个非空单元格是" & rng.Address(0, 0) & ",行号" & rng.Row & ",数值" & rng.Value
Set rng = Nothing
End Sub
2 代码的解读及实现效果
代码解析:
1) ENDRow过程使用消息框显示工作表中A列最后非空单元格的地址、行号和数值。
2) End属性返回一个Range对象,该对象代表包含源区域的区域尾端的单元格。等同于按键<End+向上键>、<End+向下键>、<End+向左键>或<End+向右键>,
语法如下:
expression.End(Direction)
参数expression是必需的,一个有效的对象。
参数Direction是可选的,所要移动的方向,可以为下表所示的XlDirection 常量之一。如下表:
c) Range对象的End属性返回的是一个Range对象,因此可以直接使用该对象的属性和方法。
运行ENDRow过程结果下图所示。
3 获得指行中的最后一个非空单元格的代码
通过修改相应的参数,能够获得指定行中最后一个非空单元格,如下面的代码所示。
Sub mynz_6_2() '第6讲 利用VBA获得指定行、列中的最后一个非空单元格
Dim rng As Range
Set rng = Sheets("6").Range("xfd1").End(xlToLeft)
MsgBox "第一行中最后一个非空单元格是" & rng.Address(0, 0) & ",列号" & rng.Column & ",数值" & rng.Value
Set rng = Nothing
End Sub
代码解析:过程使用消息框显示工作表中第一行最后一个非空单元格的地址、列号和数值、
运行效果:
上面的代码中充分应用了End属性,在实际的工作中我们也是经常利用到的一个属性,用于检测数据的录入情况,运行后可以知道非空单元格的数目多少,然后可以利用FOR,NEXT
循环,这样可以减少内存的使用,提高程序的运行效率。
今日内容回向:
1 expression.End(Direction) END属性用哪些利用价值。
2 Direction 值有哪些?
我20多年的VBA实践经验,全部浓缩在下面的各个教程中:
第7套教程(共三册):《VBA之EXCEL应用》:是对VBA基本的讲解
第1套教程(共三册):《VBA代码解决方案》:是入门后的提高教程
第4套教程(16G):VBA代码解决方案之视频(第一套的视频讲解)
第3套教程(共两册):《VBA数组与字典解决方案》:是对数组和字典的专题讲解
第2套教程(共两册):《VBA数据库解决方案》:是对数据库的专题讲解
第6套教程(共两册):《VBA信息获取与处理》:讲解VBA的网络及跨程序应用
第5套教程(共两册):VBA中类的解读和利用:类及接口技术的讲解
第8套教程(共三册):VBA之Word应用(最新教程):word中VBA的利用
上述教程的学习顺序:
① 7→1→3→2→6→5或者7→4→3→2→6→5。
② 7→8
- 如何学习VBA呢? 概括的说就是: 学习过程中要信、解、受、持,更要有回向的业力。无论您在学习的任何阶段,都要对照教程的知识点加持自己的实际工作,总会有丰厚的收获。
- 上一篇: Java 7新特性深度解析:提升效率与功能
- 下一篇: 整数的二进制表示与位运算 整数用二进制表示
猜你喜欢
- 2024-12-18 java-socket长连接demo体验 java websocket 长连接
- 2024-12-18 个人珍藏的80道多线程并发面试题 多线程使用场景面试
- 2024-12-18 这才是Java基础知识点的总结 这才是java基础知识点的总结怎么写
- 2024-12-18 JVM内存结构的历史 (从Jdk1.6、1.7、8)
- 2024-12-18 JDK安装、Eclipse安装及运行环境配置
- 2024-12-18 甲骨文:Java始终与Windows XP不离不弃
- 2024-12-18 JVM调优基础05:Java对象的内存布局
- 2024-12-18 Java 7章 练习 java第七章课后答案
- 2024-12-18 一份详细介绍JVM的资料(对比JDK8和JDK7)
- 2024-12-18 资深的程序员都是这样排查Java问题的,附工具单
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)