ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E文精选 > Excel VBA > 获取选区位置(区分整行整列)

获取选区位置(区分整行整列)

作者:绿色风 分类: 时间:2022-08-17 浏览:233
楼主
芐雨
问题:按下面要求得出选区的地址
1.当选择一个单元格时,如选择G18就弹出提示,当前选择的单元格为[G18]
2.当选择整行(含多个整行)时,如选择1行,3行,4行时   
就弹出提示,当前选择行为 [1:1,3:4]
3.当选择整列(含多个整列)时,如选择A列   
就弹出提示,当前选择列为 [A:A]
4.其它,如选择E5G13就弹出提示,当前选择区域为[E5G13]



代码如下:
  1. Sub 获取选择的位置_芐雨()
  2.     Set arr = Selection
  3.     If arr.Count = 1 Then MsgBox "当前选择的【单元格】为: [" & arr.Address(0, 0) & "]": Exit Sub   '只一个单元格
  4.     brr = Split(arr.Address, ",")  '分列地址
  5.     For i = 0 To UBound(brr)    '遍历brr
  6.         Set crr = Range(brr(i))
  7.         If crr(1).Column = 1 And crr(crr.Count).Column = Columns.Count Then  '是否为整行
  8.             x = 1
  9.         Else
  10.             If crr(1).Row = 1 And crr(crr.Count).Row = Rows.Count And x = 0 Then  '是否为整列
  11.                 y = 1
  12.             Else
  13.                 MsgBox "当前选择的【区域】为: [" & arr.Address(0, 0) & "]": Exit Sub
  14.             End If
  15.         End If
  16.     Next
  17.     If y = 1 Then MsgBox "当前选择【列】为: [" & arr.Address(0, 0) & "]": Exit Sub
  18.     If x = 1 Then MsgBox "当前选择【行】为: [" & arr.Address(0, 0) & "]": Exit Sub
  19. End Sub


获取选区位置_芐雨.zip


2楼
老糊涂
学习

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap