ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 41794|回复: 18

[2007] 如何获取EXCEL 有数据区域的最大行数

[复制链接]

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:19 | 显示全部楼层 |阅读模式
如何获取EXCEL 有数据区域的最大行数,不包括包含公式的没有值的行,

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:28 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-22 19:31 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
谢谢,EXCEL 调试的时候,怎么看 introw 的值?

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:34 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
把光标放到introw上就可以看到了。

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:35 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
usedrange.rows.count

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-22 19:39 | 显示全部楼层
Sub Macro1()
'
' Macro1 Macro

'Union(Range("A1:H100").SpecialCells(xlCellTypeConstants, 23), Range("A1:H100").SpecialCells(xlCellTypeFormulas, 23)).Select
'n = Selection.Rows.Count
Dim introw As Double
introw = [a655536].End(xlUp).Row
ActiveCell.FormulaR1C1 = "=SUBSTITUTE(Sheet1!RC,CHAR(10),""&&"")"
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:DZ1"), Type:=xlFillCopy
Range("A1:DZ1").Select
Selection.AutoFill Destination:=Range("A1:introw"), Type:=xlFillCopy
Range("A1:introw").Select

End Sub

我录制了一个宏,然后在里面加上了那个获取的最大行数,运行有错误,说 方法 RANGE  作用于_GLOBLE 时候失败。

是不是定义的变量要定义成全局的,或者代码要挪个位置,我现在看是在模块里面。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-22 19:40 | 显示全部楼层
原帖由 ggsmart 于 2011-1-22 19:35 发表
usedrange.rows.count


这个是不是 包括包含格式的但没有数值的 单元格 呢?

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:44 | 显示全部楼层
Selection.AutoFill Destination:=Range("A1:introw"), Type:=xlFillCopy
改成
Selection.AutoFill Destination:=Range("A1:A" & introw), Type:=xlFillCopy
下面一行也一样。我不知道你要做什么,根据你的需要改,但你的RANGE用法是有误的。

[ 本帖最后由 渔君 于 2011-1-22 19:46 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-22 19:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我修改了下 代码,DZintrow ,当有4行的时候,DZ4,但是报错:方法 RANGE  作用于_GLOBLE 时候失败。

Sub Macro1()
'
' Macro1 Macro
'

'Union(Range("A1:H100").SpecialCells(xlCellTypeConstants, 23), Range("A1:H100").SpecialCells(xlCellTypeFormulas, 23)).Select
'n = Selection.Rows.Count
introw = [a655536].End(xlUp).Row
ActiveCell.FormulaR1C1 = "=SUBSTITUTE(Sheet1!RC,CHAR(10),""&&"")"
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:DZ1"), Type:=xlFillCopy
Range("A1:DZ1").Select
Selection.AutoFill Destination:=Range("A1:DZintrow"), Type:=xlFillCopy
Range("A1:DZintrow").Select

End Sub

TA的精华主题

TA的得分主题

发表于 2011-1-22 19:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Range("A1:DZintrow")这个用法是有误的

格式是Range("a1:b10")
如果加变量,变量不能在引号中,而且要用&连接起来,如:
Range("a1:b" & introw)
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-9 23:28 , Processed in 0.045866 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表