Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3800|回复: 5

[分享] 【烟花原创】VBA零基础之第61篇 单元格对象Range(五)

[复制链接]
发表于 2013-12-24 14:16 | 显示全部楼层 |阅读模式
  CurrentRegion 属性
  返回一个 Range 对象,该对象表示当前区域,只读
  当前区域是以空行与空列的组合为边界的区域。
  说明:
    该属性对于许多自动展开选择以包括整个当前区域的操作很有用,如 AutoFormat 方法。
    该属性不能用于被保护的工作表。
  示例:
     Dim str$
     If ActiveSheet.ProtectContents Then
         str = "当前工作表被保护了,无法使用 CurrentRegion 属性"
     Else
         str = "A1单元格所在的单元格区域地址为:" & Range("a1").CurrentRegion.Address
     End If
     MsgBox str

  End 属性
  返回一个 Range 对象,该对象代表包含源区域的区域尾端的单元格。
  等同于按键 End+ 向上键、End+ 向下键、End+ 向左键或 End+ 向右键,只读。
  语法:End(Direction)
    Direction 必选 XlDirection 所要移至的方向。
      xlDown -4121 向下。
      xlToLeft -4159 向左。
      xlToRight -4161 向右。
      xlUp -4162 向上。
  示例:
     With Range("a1")
         Debug.Print .End(xlDown).Row
         Debug.Print .End(xlToRight).Column
     End With
     With Cells(Rows.Count, Columns.Count)
         Debug.Print .End(xlUp).Row
         Debug.Print .End(xlToLeft).Column
 End With

  Offset 属性
  返回 Range 对象,它代表位于指定单元格区域的一定的偏移量位置上的区域。
  语法:Offset(RowOffset, ColumnOffset)
  RowOffset 可选,区域偏移的行数(正数、负数或 0(零))。
  正数表示向下偏移,负数表示向上偏移。默认值是 0
  ColumnOffset 可选,区域偏移的列数(正数、负数或 0(零))。
  正数表示向右偏移,负数表示向左偏移。默认值是 0
  示例:
    With [a1]
      Debug.Print .Offset(, 3).Address
      Debug.Print .Offset(1).Address
      Debug.Print .Offset(5, 6).Offset(-5, -6).Address
      Debug.Print .Offset.Address
      'Debug.Print .Offset(-1, -1).Address
      '注意边界在偏移时超出单元格区域范围
    End With
    With [c3:d9]
      Debug.Print .Offset(3).Address
      Debug.Print .Offset(1).Address
      Debug.Print .Offset(-2, -1).Address
    End With


  Resize 属性
  调整指定区域的大小,返回 Range 对象,该对象代表调整后的区域。
  语法:Resize(RowSize, ColumnSize)
    RowSize 可选,新区域中的行数。如果省略该参数,则该区域中的行数保持不变。
    ColumnSize 可选,新区域中的列数。如果省略该参数。则该区域中的列数保持不变。
  示例:
    With [d9:H15]
      Debug.Print .Resize(1).Address
      Debug.Print .Resize(, 3).Address
      Debug.Print .Resize(1, 3).Address
      'Debug.Print .Resize(-1, -3).Address
      '参数不能为负数
    End With


  Count 属性
  返回一个 Long 值,它代表集合中对象的数量。
  示例:
    MsgBox [a1:c3].Count
    MsgBox [a1:c3,e5:h6,l8:o9].Count
    [a1:c3,e5:h6,l8:o9].Interior.ColorIndex = 3


  MergeArea 属性
  返回一个 Range 对象,该对象代表包含指定单元格的合并区域。
  如果指定的单元格不在合并区域内,则该属性返回指定的单元格。
  MergeArea 属性只应用于单个单元格区域。
  示例:
     61-1.png

    上图中A1,D2,B3为合并单元格
    MsgBoxRange("a1").MergeArea.Address
    MsgBoxRange("b1").MergeArea.Count
    MsgBoxRange("c1").MergeArea.Address
    'MsgBox Range("a1:b1").MergeArea.Addres


  MergeCells 属性
  如果区域包含合并单元格,则为 True,可读写。
  说明:
    选定包含合并单元格的区域时,所选定的区域可能与所期望选定的区域不同。
    使用 Address 属性检验选定区域的地址。
  示例:
    Dim rg As Range
    For Each rg In [a1:d5]
      If rg.MergeCells Then
        Debug.Print rg.Address
      End If
    Next

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-12-28 10:29 | 显示全部楼层
回复

使用道具 举报

发表于 2014-4-14 16:57 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-11 12:44 | 显示全部楼层
收藏了,谢谢
回复

使用道具 举报

发表于 2014-6-18 12:36 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-26 08:08 | 显示全部楼层
  MergeArea 属性
  返回一个 Range 对象,该对象代表包含指定单元格的合并区域。
  如果指定的单元格不在合并区域内,则该属性返回指定的单元格。
  MergeArea 属性只应用于单个单元格区域。
  MergeCells 属性
  如果区域包含合并单元格,则为 True,可读写。
谢谢分享,标记,六十一
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 15:24 , Processed in 0.125185 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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