【原创】VBA学习笔记(308)VBA基础知识关于行号,列号等,分清楚 .row 和 .rows  和 .rows.count

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

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值