分享

跟烟花入门VBA之62:单元格对象Range(六)

 fzchenwl 2015-04-01

 NumberFormat 属性

  返回或设置对象的格式代码。

  说明:

    如果指定区域中的所有单元格包含不同的数字格式,则此属性返回 Null

    格式代码与“设置单元格格式”对话框中的“格式代码”选项是同一个字符串。

    Format 函数使用的格式代码字符串与NumberFormat NumberFormatLocal 属性使用的格式代码字符串不同。

  示例:

    With Range('g7')

       .Value = 1

       .NumberFormat = 'yyyy/mm/dd'

       With .Offset(1)

           .Value = 34567

           .NumberFormat = 'yyyy/mm/dd'

        EndWith

  End With

  NumberFormatLocal 属性

  以采用用户语言字符串的形式返回或设置对象的格式代码。

  示例:

    MsgBoxRange('g7').NumberFormatLocal

  与OFFICE版本的本地化有关,有不同语言的OFFICE的童鞋可以测试并对比这两个属性。

  Characters 属性

  返回 Characters 对象,它代表对象文本内某个区域的字符。

  使用 Characters 对象可为文本字符串内的字符设置格式。

  语法:Characters(Start, Length)

    Start 可选,要返回的第一个字符。如果此参数是 1或被省略,则此属性返回一个以第一个字符为开头的字符区域。

    Length 可选,要返回的字符数。如果省略此参数,则此属性返回字符串的后半部分(Start 字符之后的所有字符)。

  示例:

    With Range('c17')

       .Clear

       .Value = 'ID:hwc2ycy'

       With .Characters(InStr(.Value, ':') + 1)

           .Font.Color = vbRed

       End With

    End With

  C17单元格中冒号后面的字符以红色显示。

  实际中,如果需要用代码针对单元格中某一部分字段内容设置不同的格式,可以用到这个对象。


  CountLarge 属性

  在指定区域的值中计算最大值,Variant 类型。

  EXCEL 2010版本中,工作表内一共有1048576行,16384列。

  那么,单元格数量就为1048576*16384= 17179869184

  在事件过程中有童鞋可能经常用这句判断当前所选的单元格数量:If Target.count>1

  那恭喜你了,一个地雷就在此埋下了,虽然触发机率不大。

  例如Selection_change事件,当我全选了所有的单元格,这里就要产生溢出的错误了。

  Rangecount属性返回值是LONG类型,LONG最大值为147483647。
  当全选了所有单元格后,长整形是不够用了,溢出就产生了。

  CountLarge返回类型是个Variant,不存在溢出的隐患。

  如果代码只在07以上版本使用,还是推荐使用这个属性。

  示例:

    MsgBox Cells.CountLarge

    MsgBox [1:900,a:z].CountLarge

  Font 属性

  返回一个 Font 对象,它代表指定对象的字体。

  示例:

    WithRange('a1').CurrentRegion.Rows(1)

       With .Font

           .Size = 15

           .Bold = True

       End With

    End With

  设置A1单元格所在的区域第一行的单元格字体为15号,加粗

  更多字体的设置可参考FONT对象。

  HorizontalAlignment 属性

  返回或设置指定对象的水平对齐方式。

  此属性的值可设为以下常量之一:

    xlLeft  靠左

    xlCenter 居中

    xlRight 靠右

    xlJustify 两端对齐

    xlCenterAcrossSelection 跨列居中

    xlDistributed 分散对齐

  某些常量可能不可用,这取决于所选择或安装的语言支持(例如,美国英语)。

  示例:

    WithRange('a1').CurrentRegion.Rows(1)

       .HorizontalAlignment = xlCenter

    End With

  VerticalAlignment 属性

  返回或设置指定对象的垂直对齐方式。

  此属性的值可设为以下常量之一:

    xlTop 靠上
    xlCenter 居中
    xlBottom 靠下
    xlJustify 两端对齐
    xlDistributed 分散对齐

  示例:

    With Range('a1').CurrentRegion

       .VerticalAlignment = xlCenter

    End With

  Style 属性

  返回或设置一个包含 Style 对象的 Variant 值,它代表指定区域的样式。

  Style 对象包含样式的所有属性(字体、数字格式、对齐方式,等等)。

  有几种内置样式,包括“常规”、“货币”和“百分比”。

  同时对多个单元格修改单元格格式属性时,使用 Style 对象是快捷高效的方法。

  对于 Workbook 对象,Style 对象是 Styles 集合的成员。

  Styles 集合包含该工作簿的所有已定义样式。

  通过更改应用于单元格的样式的属性可更改单元格的外观。

  但要记住,更改样式的属性将影响所有以该样式格式化了的单元格。

  示例:

    Worksheets('Sheet1').Range('A1:A10').Style= 'Percent'

    ActiveWorkbook.Styles('Normal').Font.Bold= True


    Dim sty As Style

    Debug.Print '清理样式前,当前工作簿中样式总数:' & ActiveWorkbook.Styles.Count

    For Each sty In ActiveWorkbook.Styles

       With sty

           Debug.Print .Name, .NameLocal

            '显示样式的名字

           If Not .BuiltIn Then

               .Delete

           End If

           '如果自定义的样式则删除

       End With

    Next

    Debug.Print '清理样式后,当前工作簿中样式总数:' & ActiveWorkbook.Styles.Count

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多