【Excel VBA】超级实用的UsedRange
引言
之前写过一篇《【Excel VBA】得到最后数据的行数》,提到得到最后数据的行数使用的是End(xlUp)的方法,使用这种方法的缺点是自动化程度不够高,不能较为智能的判断整个数据区的最后一行数据,只能在编写代码的时候指定使用那一列来得到最后一行数据行数。
新方法:UsedRange
直接上代码,在我写的代码中首先对变量进行了定义,其实也可以直接使用。
Dim uR As VariantSet uR = ActiveSheet.UsedRange
实例两种方法的对比
首先在Excel中录入一些数据,如下图:
- 使用End方式
' 一、使用End方式取得最后一行行号 和 最后一列列号Dim FinalRow As IntegerDim FinalCol As IntegerFinalRow = Range("A65536").End(xlUp).Row '得到A列最后数据的行数FinalCol = Range("ZZ1").End(xlToLeft).Column '得到1行最后数据的列数MsgBox "最后一行数据的行号:" & FinalRow & " 最后一列数据的列号:" & FinalCol, vbOKOnly, " End方式"
运行效果如图:
可以看到使用End方式得到的数据最后一行的行号并不正确。
- 使用UsedRange方式
' 二、使用UsedRange方式取得最后一行行号Dim uR As VariantSet uR = ActiveSheet.UsedRangeDim FinalRow As IntegerDim FinalCol As IntegerFinalRow = uR.Rows.CountFinalCol = uR.Columns.CountMsgBox "最后一行数据的行号:" & FinalRow & " 最后一列数据的列号:" & FinalCol, vbOKOnly, " UsedRange方式"
运行效果如图:
可以看到使用UsedRange的方式得到的数据最后一行行号是正确的。
使用UsedRange的其他便利性
使用UsedRange的另一个便利的性是,调用循环调用方便。不需要用字母的参数调用单元格,而是直接传入行号、列号就可以了。
' 三、使用UsedRange方式计算总成绩For ir = 2 To FinalRowWith uR.Item(ir, 5).Value = .Item(ir, 3).Value + .Item(ir, 4).ValueEnd WithNext
本文所有代码
Sub Test()' 一、使用End方式取得最后一行行号 和 最后一列列号Dim FinalRow As IntegerDim FinalCol As IntegerFinalRow = Range("A65536").End(xlUp).Row '得到A列最后数据的行数FinalCol = Range("ZZ1").End(xlToLeft).Column '得到1行最后数据的列数MsgBox "最后一行数据的行号:" & FinalRow & " 最后一列数据的列号:" & FinalCol, vbOKOnly, " End方式"' 二、使用UsedRange方式取得最后一行行号Dim uR As VariantSet uR = ActiveSheet.UsedRangeFinalRow = uR.Rows.CountFinalCol = uR.Columns.CountMsgBox "最后一行数据的行号:" & FinalRow & " 最后一列数据的列号:" & FinalCol, vbOKOnly, " UsedRange方式"' 三、使用UsedRange方式计算总成绩For ir = 2 To FinalRowWith uR.Item(ir, 5).Value = .Item(ir, 3).Value + .Item(ir, 4).ValueEnd WithNextEnd Sub
【Excel VBA】超级实用的UsedRange相关推荐
- 计算机表格快捷键,工具 | 20个超级实用的Excel快捷键,会用5个是高手!
原标题:工具 | 20个超级实用的Excel快捷键,会用5个是高手! Excel快捷键可以大幅提高工作效率,一般的快捷键大家都已熟练使用.今天高顿君分享的是很少有人使用,但又非常实用的Excel快捷键 ...
- 计算机excel必备知识,Excel超级实用技巧12则 -电脑资料
大家经常用Excel制作表格,处理数据,怎样才能提高工作效率呢?下面我们就为大家整理12则Excel常用小技巧, 1.用Excel计算多列数据的运算结果时,你可以在旁边的一列显示出它的每步计算经过,用 ...
- 征服Excel VBA:让你工作效率倍增的239个实用技巧
下载地址:https://webboy.pipipan.com/fs/19405313-362892031 内容简介: <征服Excel VBA:让你工作效率倍增的239个实用技巧>分16 ...
- 太实用了!Excel VBA常用代码!
前两天有两位朋友留言想收集一些VBA的常用代码,今天开始会陆续分享一些! 记得收藏好哦,因为今后你应用到稍大型Excel VBA程序时,这其中某些代码肯定会用到. 来看看都是哪些常用代码: 下面先举一 ...
- 巧用Excel VBA 快速编排考场座位
百度文库下载地址: 学校考试考场编排软件(单年级) http://wenku.baidu.com/view/464023029ec3d5bbfc0a740f.html 学校考试考场编排软件(多年级) ...
- Excel VBA编程常用语句300句
Excel VBA编程常用语句300句 ************** * VBA 语句集 * * (第 1 辑) * ************** **************** * 定制模块行为 ...
- Excel+VBA+之快速上手
第一章 VBA语言基础 第一节 标识符 一.定义 标识符是一种标识变量.常量.过程.函数.类等语言构成单位的符号,利用它可以完成对变量.常 量.过程.函数.类等的引用. 二.命名规则 1 ...
- EXCEL VBA常用语句100句
以下转自:http://www.bbioo.com/blog/bio/guohui/1524.htm EXCEL VBA常用语句100句 定制模块行为 Option Explicit '强制对模块内所 ...
- Excel+VBA+之快速上手(2)
三.图表格式设置 对于图的格式设置,一般是录制一个宏,再删除不需要的语句,这样是开发者最省事的方法.在本节 的示例中有详细的格式设置,可以更改坐标轴的名礀,大小范围,刻度大小等.对不清楚的图的类型名 ...
最新文章
- Science子刊: 长期杀虫剂诱导选择下的宿主基因组与微生物组的共适应
- couchdb 任意命令执行漏洞(cve-2017-12636)
- 布道微服务_05RPC远程服务调用的实现
- 信息系统项目管理师-成本管理知识点
- PKUWC 2018 滚粗记
- Gym - 101471D Money for Nothing(决策单调性+分治+贪心)
- k8s php mysql_在k8s上部署第一个php应用
- Android Canvas绘制带箭头的直线
- jaxl php,php往mysql写数据,中文乱码有关问题
- jmeter脚本写个小demo(html论坛自动发帖、json龙果学院-前后端分离)
- 邬贺铨/余晓晖/田溯宁…千家从业者,数十位行业大咖共同烹制了一场怎样的AIoT“盛宴”?
- springMVC接收数组参数
- Vue中默认main.js
- 华为盒子 原生android,华为悦盒/各种安卓盒子找回原生设置以及适配蓝牙遥控器...
- C语言 - MISRA代码规范
- Java:萌新之路——银行账户管理系统
- 中集集团高科技企业中集飞瞳,贯彻国家人工智能与实体经济深度融合战略,成熟AI产品智能航运智能化港航智慧港口智能铁路智能多式联运
- 各种各样的分布函数-Γ分布
- 和讯博客设置友情链接
- 个人作业——A002-185-2515-郑远曦