【原创】VBA学习笔记(308)VBA基础知识关于行号,列号等,分清楚 .row 和 .rows 和 .rows.count
1 为什么连,行号,列号之类的都要重新拿出来说很多基础知识,我以为我懂但其实我一用就发现各种问题,其实我不懂现在想想,王阳明先生的知行合一,真有道理,知而不能行,就是不知。2 如何获得行号,列号单行单列的 行号,列号.row.column范围内的 行号,列号 集合range().rows范围内的 行号,列号 集合的数量rang...
·
1 为什么连,行号,列号之类的都要重新拿出来说
- 很多基础知识,我以为我懂
- 但其实我一用就发现各种问题,其实我不懂
- 现在想想,王阳明先生的知行合一,真有道理,知而不能行,就是不知。
2 .row 和 .rows 和 .rows.count的区别
同理 .column .columns .columns.count也一样
- 总结
- row 和column 一般指行号和列号
- range().row 返回的是行号/列号
- 如果是1个单元格显示就是正确的行号/列号。
- 如果是1个区域,显示的是这个区域左上角的行号/列号
- 如果强行打印一个区域的,行号列号,其实返回的是左上角单元格的行号,列号
- rows 和columns 一般指区域!
- rows() 或 columns 指得是区域,是row的集合
- range().rows() 返回得也是区域
- 区域里如果只有一个单元格,debug.print等可以直接打印value,否则是不行的
- rows.count 和 columns.count 是指行数/列数
- rows.count
- columns.count
Sub ttt1()
Debug.Print "测试单个单元格的 row rows rows.count"
Debug.Print Range("a5").Row
Debug.Print [A5].Column
Debug.Print Range("a5").Rows '返回的是 range(),并且是1个单元格,然后debug.print 默认打印range().value
Debug.Print Range("a5").Columns
Debug.Print Range("a5").Rows.Count
Debug.Print Range("a5").Columns.Count
Debug.Print "测试区域 rows columns的 row rows rows.count"
Debug.Print Rows("3:3").Row ' 其实显示的是区域左上角单元格的row
Debug.Print Rows("3:3").Column ' 其实显示的是区域左上角单元格的column
Debug.Print Columns("C:C").Row ' 其实显示的是区域左上角单元格的row
Debug.Print Columns("C:C").Column ' 其实显示的是区域左上角单元格的column
'Debug.Print Rows("1:1").Rows 'rows指代的是1个区域,无法打印,除非是1个格子
'Debug.Print Rows("1:1").Columns 'columns指代的是1个区域,无法打印,除非是1个格子
Debug.Print Rows("1:1").Rows.Count
Debug.Print Rows("1:1").Columns.Count
Debug.Print Columns("D:D").Rows.Count
Debug.Print Columns("D:D").Columns.Count
Debug.Print "测试区域range 的 row rows rows.count"
Debug.Print Range("B6:c6").Row ' 其实显示的是区域左上角单元格的row
Debug.Print [B6:c6].Column ' 其实显示的是区域左上角单元格的column
'Debug.Print Range("B6:c6").Rows 'rows指代的是1个区域,无法打印,除非是1个格子
'Debug.Print Range("B6:c6").Columns 'columns指代的是1个区域,无法打印,除非是1个格子
Debug.Print Range("B6:c6").Rows.Count
Debug.Print Range("B6:c6").Columns.Count
End Sub
3 如何获得多个行号,列号
Sub test110()
Debug.Print Cells(5, 5).Row
Debug.Print Cells(5, 5).Column
Debug.Print
Range("c1:d3").Select
'Debug.Print Selection.Rows '多个行号肯定不能这样打印,需要循环1个个取出来
'Debug.Print Selection.Columns '
For Each r1 In Selection.Rows
Debug.Print "row" & r1.Row
Next
Debug.Print
For Each c1 In Selection.Columns
Debug.Print "column" & c1.Column
Next
Debug.Print
End Sub
更多推荐
已为社区贡献9条内容
所有评论(0)