Sub
abc()
x
=
SelectionRowsCount
MsgBox
"选中了"
&
x
&
"行"
End
Sub
Sub Example()
Dim myObject As Object
'对于浮动式文本框控件
Set myObject = ActiveDocumentShapes(1)OLEFormatObject
MsgBox myObjectText
'对于嵌入式文本框控件
Set myObject = ActiveDocumentInlineShapes(1)OLEFormatObject
MsgBox myObjectText
'对于word的文本框图形(非控件)
Set myObject = ActiveDocumentShapes(1)TextFrameTextRange
MsgBox myObjectText
End Sub
当筛选结果为空时,出现了Range("a65536")End(xlUp)Row=3,小于了你的首行值4,所以你再使用Range("a4:a" & Range("a65536")End(xlUp)Row)也就是Range("a4:a3")就出错了。
如果修改的话你最好在使用这个range时先判断Range("a65536")End(xlUp)Row是否大于等于首行值4,只有大于等于才能用,如果小于4就说明筛选结果为空。
修改代码如下:
Dim i As Integer
i = Range("a65536")End(xlUp)Row
If i < 4 Then
MsgBox "已筛选出来的记录行数一共0行"
Else
For Each cel In Range("a4:a" & i)SpecialCells(xlCellTypeVisible)
MsgBox "已筛选出来的记录行数:" & celRow
Next
MsgBox "已筛选出来的记录行数一共" & Range("a4:a" & i)SpecialCells(xlCellTypeVisible)Count & "行"
End If
以上就是关于Excel vba 获取有多少行数据的代码全部的内容,包括:Excel vba 获取有多少行数据的代码、怎样读取textbox第几行数据vba、vba 筛选后计算行数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)