欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    Excel VBA编程获取单元格行列信息.docx

    • 资源ID:3156602       资源大小:38.52KB        全文页数:6页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Excel VBA编程获取单元格行列信息.docx

    Excel VBA编程 获取单元格行列信息Excel VBA编程 获取单元格行列信息 在VBA中,提供了Select属性来对单元格区域进行选择,并可以对其各种设置,例如指定字体颜色、单元格的边框等。除些之外,还提供了其他的一些属性,用来读取这些选择后的单元格的信息,这在编程中非常实用。 1获取单元格或单元格区域的地址 在VBA代码中,对于某些需要使用所选择的单元格或单元格区域的地址时,可使用Range对象中的Address属性来获取单元格区域的地址。 格式:表达式.Address(RowAbsolute,ColumnAbsolute, ReferenceStyle,External,RelativeTo) 其中表达式代表一个Range对象的变量,属性中括号内的参数用于返回当前地址的类型,其详细说明如表14.5所示。 表14.5 Address参数说明 对象 RowAbsolute ColumnAbsolute ReferenceStyle External RelativeTo 可选/必选 可选 可选 可选 可选 可选 数据类型 Variant Variant 描述 如果为 True,则以绝对引用返回引用的行部分。默认值为 True。 如果为 True,则以绝对引用返回引用的列部分。默认值为 True。 XlReferenceStyle 引用样式。默认值为xlA1。 Variant Variant 如果为 True,则返回外部引用。如果为 False,则返回本地引用。默认值为 False。 如果RowAbsolute和ColumnAbsolute为False,并且ReferenceStyle为xlR1C1,则必须包括相对引用的起始点。此参数是定义起始点的Range对象。 如果引用包含多个单元格,RowAbsolute和ColumnAbsolute 将应用于所有的行和列。对象ReferenceStyle的数据类型XlReferenceStyle是一个枚举类型的数据,包括了两个值,说明如表14.6所示。 表14.6 XlReferenceStyle值的描述 名称 xlA1 xlR1C1 1 -4150 值 描述 默认值。使用xlA1返回A1样式的引用。 使用xlR1C1返回R1C1样式的引用。 例如,在工作表Sheet1中,显示引用的单元格的几种不同的样式,过程代码如下: Sub vRange Dim mc As Range Set mc = Range("A1:E5") MsgBox mc.Address '返回 $A$1:$E$5 ' 参数RowAbsolute MsgBox mc.Address(RowAbsolute:=False) '返回 $A1:$E5 '参数ColumnAbsolute MsgBox mc.Address(ColumnAbsolute:=False) '返回 A$1:E$5 '属性中前两个参数 MsgBox mc.Address(False, False) '返回 A1:E5 '参数External MsgBox mc.Address(External:=True) '返回 工作簿对象Sheel1'!$A$1:$E$5 MsgBox mc.Address(External:=False) '返回 $A$1:$E$5 '参数ReferenceStyle MsgBox mc.Address(ReferenceStyle:=xlA1) ' $A$1:$E$5 MsgBox mc.Address(ReferenceStyle:=xlR1C1) ' R1C1:R5C5 '参数RelativeTo MsgBox mc.Address(ReferenceStyle:=xlR1C1, _ RowAbsolute:=False, _ ColumnAbsolute:=False, _ RelativeTo:=Worksheets(1).Cells(3, 3) '返回 R-2C-2:R2C2' End Sub 2获取单元格的行号 每个单元格均有一个固定的地址,地址编号由列号和行号组成。如A1,B2等。一个地址唯一代表一个单元格。要在VBA中获取单元格的行号和列号时,可用Range对象的Row、Columns属性。 l Row属性 用于返回所选单元格区域中第一个子区域的第一行的行号,值为Long类型的数据,且属性为只读。语法格式如下: 格式:表达式.Row 表达式代表一个Range对象的变量。 l Columns属性 用于返回指定区域中第一块中的第一列的列号。值为Long类型的数据,且属性为只读。语法格式如下: 格式:表达式.Column 表达式代表一个Range对象的变量。如A列返回1,B列返回2,依此类推。若要返回区域中最后一列的列号,请使用下列语句。 myRange.Columns(myRange.Columns.Count).Column 在如下的过程中,显示当前的工作表中活动单元格的行号和列号。 Sub AcRange Dim X, Y As Integer X = ActiveCell.Row '获取当前行 Y = ActiveCell.Column '获取当前列 MsgBox "当前活动单元格:行(" & Str(X) & ") ,列(" & Str(Y) & ")" End Sub 3获取单元格的列标字母 在获取单元格的列标字母时,没有特定的属性。但是可以通过Excel中自带的函数Split将单元格的列标字母截取。 Split函数用于返回一个下标从零开始的一维数组,它包含了指定数目的子字符串。在单元格按地址返回的一般都是单元格的绝对引用,行和列前有一个“$”字符,在该函数中,可按“$”分组将地址放到数组中。 例如,在下面的过程中,使用Split函数取出当前活动单元格的列标字母。 Sub getCellWord '声明数组w Dim w As String '将当前的活动单元格的地址字串按$分组分别放入w中 w = Split(ActiveCell.Address, "$") MsgBox "当前活动单元格的列标字母:" & w(1) End Sub 还可以使用其他的字符串截取函数,通过一定的算法取出单元提 示 格的列标字母。 4获取单元格区域的起始 可使用Address属性获取当前的单元格区域的地址,该地址由两对单元格引用组成,中间使用冒号分隔,使用Split函数使用冒号将地址字符串分隔,数组中的第一个元素就是单元格区域的起始地址。过程代码如下: Sub getFirstAdd Dim R As String R = Split(Selection.Address, ":") MsgBox "当前活动单元格的列标字母:" &R(0) End Sub 5起始行号和终止行号 应用程序中,对单元格区域进行操作时,单元格区域一般都会形成一个矩阵,如A1:D5。用户对这个区域进行操作时,有可能会用到这个区域的起始和终止行号。要获取这些数据,可以将该区域的地址进行拆分。 例如,在应用程序中,计算单元格区域B2:H13的总行数,代码如下: Sub getTotleRow Dim R As String Dim x As Integer, y As Integer Range("B2:E13").Select R = Split(Selection.Address, "$") '获取起始终止行号 MsgBox "起始行号:" & Val(R(2) & vbCrLf & "终止行号:" & Val(R(4) MsgBox Range(Selection.Address).Rows.Count '总行数 End Sub

    注意事项

    本文(Excel VBA编程获取单元格行列信息.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开